diff --git a/.gitignore b/.gitignore index 788ef422e1..2008dbc83b 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,4 @@ ee-results.json # game stuff game_config/* +imgui.ini diff --git a/common/goos/PrettyPrinter.cpp b/common/goos/PrettyPrinter.cpp index dfa0ac8beb..b723a97666 100644 --- a/common/goos/PrettyPrinter.cpp +++ b/common/goos/PrettyPrinter.cpp @@ -11,6 +11,7 @@ #include "PrettyPrinter.h" #include "Reader.h" #include "third-party/fmt/core.h" +#include "common/log/log.h" namespace pretty_print { @@ -29,7 +30,12 @@ const std::unordered_map const_floats = {{0x40490fda, "PI"}, goos::Object float_representation(float value) { u32 int_value; memcpy(&int_value, &value, 4); - if (const_floats.find(int_value) != const_floats.end()) { + u8 exp = (int_value >> 23) & 0xff; + u32 mant = int_value & 0x7fffff; + if ((exp == 0 && mant != 0) || exp == 0xff) { + lg::warn("PS2-incompatible float (0x{:08X}) detected! Writing as the-as cast.", int_value); + return pretty_print::build_list("the-as", "float", fmt::format("#x{:x}", int_value)); + } else if (const_floats.find(int_value) != const_floats.end()) { return pretty_print::to_symbol(const_floats.at(int_value)); } else if (banned_floats.find(int_value) == banned_floats.end()) { return goos::Object::make_float(value); diff --git a/common/log/log.cpp b/common/log/log.cpp index c560507fd4..dc49353510 100644 --- a/common/log/log.cpp +++ b/common/log/log.cpp @@ -108,7 +108,7 @@ void initialize() { // VIRTUAL_TERMINAL_PROCESSING enables support for ANSI colors in the stdout text, used by the // logging tool. - // ENABLE_QUICK_EDIT_MODE enables various mouse-related stdin functions, such as right-click for + // QUICK_EDIT_MODE enables various mouse-related stdin functions, such as right-click for // copy-paste, scroll wheel to - shocker - scroll, etc. // Get handle to stdout diff --git a/decompiler/IR2/AtomicOpTypeAnalysis.cpp b/decompiler/IR2/AtomicOpTypeAnalysis.cpp index 3f66ec2e8f..23846ae34d 100644 --- a/decompiler/IR2/AtomicOpTypeAnalysis.cpp +++ b/decompiler/IR2/AtomicOpTypeAnalysis.cpp @@ -1243,10 +1243,18 @@ TypeState CallOp::propagate_types_internal(const TypeState& input, // we're calling a varags function, which is format. We can determine the argument count // by looking at the format string, if we can get it. auto arg_type = input.get(Register(Reg::GPR, Reg::A1)); - if (arg_type.is_constant_string() || arg_type.is_format_string()) { + auto can_determine_argc = arg_type.can_be_format_string(); + auto dynamic_string = false; + if (!can_determine_argc && arg_type.typespec() == TypeSpec("string")) { + // dynamic string. use manual lookup table. + dynamic_string = true; + } + if (can_determine_argc || dynamic_string) { int arg_count = -1; - if (arg_type.is_constant_string()) { + if (dynamic_string) { + arg_count = dts.get_dynamic_format_arg_count(env.func->guessed_name.to_string(), m_my_idx); + } else if (arg_type.is_constant_string()) { auto& str = arg_type.get_string(); arg_count = dts.get_format_arg_count(str); } else { @@ -1286,7 +1294,8 @@ TypeState CallOp::propagate_types_internal(const TypeState& input, return end_types; } else { - throw std::runtime_error("Failed to get string for _varags_ call, got " + arg_type.print()); + throw std::runtime_error("Failed to get appropriate string for _varags_ call, got " + + arg_type.print()); } } // set the call type! diff --git a/decompiler/IR2/FormExpressionAnalysis.cpp b/decompiler/IR2/FormExpressionAnalysis.cpp index 2de9eb0dc3..714578a241 100644 --- a/decompiler/IR2/FormExpressionAnalysis.cpp +++ b/decompiler/IR2/FormExpressionAnalysis.cpp @@ -1934,9 +1934,9 @@ void SimpleExpressionElement::update_from_stack_int_to_float(const Env& env, } result->push_back(pool.alloc_element(TypeSpec("float"), arg, true)); } else { - throw std::runtime_error(fmt::format("Used int to float on a {} from {}: {} (op {})", - type.print(), var.to_form(env).print(), - arg->to_string(env), m_my_idx)); + throw std::runtime_error(fmt::format("At op {}, used int to float on a {} from {}: {}", + m_my_idx, type.print(), var.to_form(env).print(), + arg->to_string(env))); } } @@ -4947,7 +4947,8 @@ void ConditionalMoveFalseElement::push_to_stack(const Env& env, FormPool& pool, // pop the value and the original auto popped = pop_to_forms({old_value, source}, env, pool, stack, true); if (!is_symbol_true(popped.at(0))) { - lg::warn("Failed to ConditionalMoveFalseElement::push_to_stack"); + lg::warn("{}: Failed to ConditionalMoveFalseElement::push_to_stack", + env.func->guessed_name.to_string()); stack.push_value_to_reg(source, popped.at(1), true, TypeSpec("symbol")); stack.push_form_element(this, true); return; @@ -5302,7 +5303,7 @@ void LabelDerefElement::update_from_stack(const Env& env, auto as_label = make_label_load(m_lid, env, pool, m_size, m_load_kind); if (!as_label) { throw std::runtime_error( - fmt::format("Unable to figure out label load for {}\n", env.file->labels.at(m_lid).name)); + fmt::format("Unable to figure out label load for {}", env.file->labels.at(m_lid).name)); } result->push_back(as_label); } diff --git a/decompiler/ObjectFile/ObjectFileDB.cpp b/decompiler/ObjectFile/ObjectFileDB.cpp index 31c577210c..0b22731517 100644 --- a/decompiler/ObjectFile/ObjectFileDB.cpp +++ b/decompiler/ObjectFile/ObjectFileDB.cpp @@ -163,6 +163,8 @@ ObjectFileDB::ObjectFileDB(const std::vector& _dgos, } dts.bad_format_strings = config.bad_format_strings; + dts.format_ops_with_dynamic_string_by_func_name = + config.hacks.format_ops_with_dynamic_string_by_func_name; } void ObjectFileDB::load_map_file(const std::string& map_data) { diff --git a/decompiler/config.cpp b/decompiler/config.cpp index d30f732562..60c88525bc 100644 --- a/decompiler/config.cpp +++ b/decompiler/config.cpp @@ -173,6 +173,9 @@ Config read_config_file(const std::string& path_to_config_file) { config.hacks.blocks_ending_in_asm_branch_by_func_name = hacks_json.at("blocks_ending_in_asm_branch") .get>>(); + config.hacks.format_ops_with_dynamic_string_by_func_name = + hacks_json.at("dynamic_format_arg_counts") + .get>>>(); for (auto& entry : hacks_json.at("cond_with_else_max_lengths")) { auto func_name = entry.at(0).get(); @@ -187,4 +190,4 @@ Config read_config_file(const std::string& path_to_config_file) { return config; } -} // namespace decompiler \ No newline at end of file +} // namespace decompiler diff --git a/decompiler/config.h b/decompiler/config.h index 7ea6bc0de8..87c07e123a 100644 --- a/decompiler/config.h +++ b/decompiler/config.h @@ -73,6 +73,8 @@ struct DecompileHacks { std::unordered_map cond_with_else_len_by_func_name; std::unordered_set reject_cond_to_value; std::unordered_map> blocks_ending_in_asm_branch_by_func_name; + std::unordered_map>> + format_ops_with_dynamic_string_by_func_name; }; struct Config { diff --git a/decompiler/config/all-types.gc b/decompiler/config/all-types.gc index ed4a51f4bf..53b2d427ff 100644 --- a/decompiler/config/all-types.gc +++ b/decompiler/config/all-types.gc @@ -802,6 +802,9 @@ (vibrations #x10e) (play-hints #x10f) (center-screen #x110) + (on #x111) + (off #x112) + (move-dpad #x113) (english #x114) (french #x115) (german #x116) @@ -813,22 +816,71 @@ (game-options #x127) (graphic-options #x128) (sound-options #x129) - + (4x3 #x12a) + (16x9 #x12b) + (60hz #x12c) + (50hz #x12d) + (game-title #x12e) (hidden-power-cell #x12f) ;; why is this here?? - + (memcard-no-space #x130) + (memcard-not-inserted #x131) + (card-not-formatted-title #x132) + (memcard-space-requirement1 #x133) + (memcard-space-requirement2 #x134) + (card-not-formatted-msg #x135) (saving-data #x136) + (loading-data #x137) (do-not-remove-mem-card #x138) + (overwrite? #x139) + (format? #x13a) - (continue-without-saving #x13f) + (yes #x13c) + (no #x13d) (back #x13e) + (continue-without-saving #x13f) + (select-file-to-save #x140) + (select-file-to-load #x141) + (save-data-already-exists #x142) + (insert-memcard #x143) + (continue? #x144) (load-game #x14b) (save-game #x14c) + (formatting #x14d) + (creating-save-data #x14e) + (empty #x14f) (options #x150) + (error-loading #x151) + (error-saving #x152) + (error-formatting #x153) + (error-creating-data #x154) + (memcard-removed #x156) + (autosave-disabled-title #x157) + (autosave-disabled-msg #x158) + (no-save-data #x159) + (create-save-data? #x15a) + (check-memcard #x15b) (new-game #x15c) + (back? #x15d) (ok #x15e) (exit-demo #x15f) + (autosave-warn-title #x160) + (autosave-warn-msg #x161) + (task-completed #x162) + (check-memcard-and-retry #x163) + (screen-change-to-60hz #x164) + (screen-60hz-warn-support #x165) + (screen-60hz-warn-timer #x166) + (screen-now-60hz #x167) + (screen-60hz-keep? #x168) + (warp-gate-use-dpad #x169) + (no-disc-title #x16a) + (no-disc-msg #x16b) + (bad-disc-title #x16c) + (bad-disc-msg #x16d) (press-start #x16e) (quit-game #x16f) + (quit? #x170) + (total-collected #x171) (village1-mayor-money #x200) (vollage1-uncle-money #x201) @@ -1194,11 +1246,11 @@ (declare-type event-message-block structure) (deftype state (protect-frame) - ((code function :offset-assert 16) - (trans (function none) :offset-assert 20) - (post (function none) :offset-assert 24) - (enter function :offset-assert 28) - (event (function process int symbol event-message-block object) :offset-assert 32) + ((code function :offset-assert 16) + (trans (function none) :offset-assert 20) + (post function :offset-assert 24) + (enter function :offset-assert 28) + (event (function process int symbol event-message-block object) :offset-assert 32) ) (:methods (new (symbol type basic function @@ -5254,7 +5306,7 @@ (light-yellow 32) (red-orange 33) (another-orange-red 34) - + (red 3) (red2 4) (yellow 5) @@ -5560,6 +5612,16 @@ ;; - Types +(defenum language-enum + :type int64 + (english) + (french) + (german) + (spanish) + (italian) + (japanese) + (uk-english) + ) ;; was manually done (deftype setting-data (structure) ((border-mode symbol :offset-assert 0) @@ -5568,7 +5630,7 @@ (dialog-volume float :offset-assert 12) (process-mask process-mask :offset-assert 16) (common-page int32 :offset-assert 20) - (language int64 :offset-assert 24) + (language language-enum :offset-assert 24) (screenx int32 :offset-assert 32) (screeny int32 :offset-assert 36) (vibration symbol :offset-assert 40) @@ -5817,7 +5879,7 @@ :size-assert #xc :flag-assert #xa0000000c (:methods - (dummy-9 (_type_) none 9) + (draw (_type_) none 9) ) ) @@ -8020,7 +8082,7 @@ (dummy1 uint8 :offset-assert 26) (envmap-usage uint8 :offset-assert 27) (extra-info merc-extra-info :offset-assert 28) - + ;; added (data uint64 4 :offset 0) ) @@ -8852,6 +8914,14 @@ ;; - Types +(deftype mc-handle (int32) + ( + ) + :method-count-assert 9 + :size-assert #x4 + :flag-assert #x900000004 + ) + (deftype mc-file-info (structure) ((present int32 :offset-assert 0) (blind-data float 16 :offset-assert 4) @@ -8902,10 +8972,6 @@ (define-extern int32 type) -;; - Unknowns - -;;(define-extern mc-handle UNKNOWN) - ;; ---------------------- ;; File - game-info-h @@ -10070,8 +10136,8 @@ (new-joint-anim art-joint-anim :offset-assert 188) (new-joint-anim-blend uint64 :offset-assert 192) (anim-mode symbol :offset-assert 200) - (cur-grab-handle uint64 :offset-assert 208) - (cur-target-handle uint64 :offset-assert 216) + (cur-grab-handle handle :offset-assert 208) + (cur-target-handle handle :offset-assert 216) (old-grab-pos vector :inline :offset-assert 224) (joint joint 4 :offset-assert 240) (new-post-hook function :offset-assert 256) @@ -10084,7 +10150,6 @@ :method-count-assert 20 :size-assert #x114 :flag-assert #x1400b00114 - ;; inherited inspect of process-drawable ) (deftype part-spawner (process-drawable) @@ -10097,7 +10162,6 @@ :method-count-assert 21 :size-assert #xd0 :flag-assert #x15006000d0 - ;; inherited inspect of process-drawable (:methods (dummy-20 () none 20) ) @@ -10122,9 +10186,6 @@ :method-count-assert 14 :size-assert #xf8 :flag-assert #xe009000f8 - ;; inherited inspect of process - (:methods - ) ) (deftype camera-tracker (process) @@ -10152,7 +10213,6 @@ :method-count-assert 15 :size-assert #xe0 :flag-assert #xf007000e0 - ;; inherited inspect of process ;; field ~Tuserdata is a basic loaded with a signed load (:methods (dummy-14 () none 14) @@ -10171,7 +10231,6 @@ :method-count-assert 20 :size-assert #xd0 :flag-assert #x14006000d0 - ;; inherited inspect of process-drawable ) (deftype swingpole (process) @@ -10184,7 +10243,6 @@ :method-count-assert 14 :size-assert #x98 :flag-assert #xe00300098 - ;; inherited inspect of process ) (deftype gui-query (structure) @@ -10232,7 +10290,7 @@ :size-assert #x70 :flag-assert #xf00000070 (:methods - (dummy-14 () none 14) + (die () _type_ :state 14) ) ) @@ -11279,7 +11337,7 @@ (dummy-11 () none 11) (dummy-12 () none 12) (dummy-13 () none 13) - (dummy-14 () none 14) + (dummy-14 (_type_) none 14) ) ) @@ -13216,8 +13274,8 @@ (deftype sprite-array-2d (basic) ((num-sprites int32 2 :offset-assert 4) (num-valid int32 2 :offset-assert 12) - (vec-data uint32 :offset-assert 20) - (adgif-data uint32 :offset-assert 24) + (vec-data pointer :offset-assert 20) + (adgif-data (inline-array adgif-shader) :offset-assert 24) (pad uint128 4 :offset-assert 32) (data uint128 1 :offset-assert 96) ) @@ -13258,8 +13316,8 @@ (deftype sprite-array-3d (basic) ((num-sprites int32 2 :offset-assert 4) (num-valid int32 2 :offset-assert 12) - (vec-data uint32 :offset-assert 20) - (adgif-data uint32 :offset-assert 24) + (vec-data pointer :offset-assert 20) + (adgif-data (inline-array adgif-shader) :offset-assert 24) (data uint128 1 :offset-assert 32) ) (:methods @@ -13382,16 +13440,17 @@ (deftype sp-field-init-spec (structure) ((field uint16 :offset-assert 0) (flags uint16 :offset-assert 2) - (initial-value int32 :offset-assert 4) - (random-range int32 :offset-assert 8) - (random-mult int32 :offset-assert 12) - (initial-valuef float :offset 4) ;; TODO - floats suck - some of these values end up being NaN - these should come before the int32 fields - (random-rangef float :offset 8) ;; TODO - floats suck - some of these values end up being NaN - these should come before the int32 fields - (random-multf float :offset 12) ;; TODO - floats suck - some of these values end up being NaN - these should come before the int32 fields - (func symbol :offset 4) + (initial-valuef float :offset-assert 4) + (random-rangef float :offset-assert 8) + (random-multf float :offset-assert 12) + (initial-value int32 :offset 4) + (random-range int32 :offset 8) + (random-mult int32 :offset 12) + (sym symbol :offset 4) ;; moved + (func function :offset 4) (tex uint32 :offset 4) - (pntr uint32 :offset 4) - (sym basic :offset 4) + (pntr pointer :offset 4) + ;; gap (sound basic :offset 4) ) :method-count-assert 9 @@ -13464,23 +13523,21 @@ ) (deftype sparticle-launch-control (inline-array-class) - ((group basic :offset-assert 16) - (proc basic :offset-assert 20) + ((group sparticle-launch-group :offset-assert 16) + (proc process :offset-assert 20) (local-clock int32 :offset-assert 24) (fade float :offset-assert 28) (matrix int32 :offset-assert 32) (last-spawn-frame int32 :offset-assert 36) (last-spawn-time int32 :offset-assert 40) (center vector :inline :offset-assert 48) - ;; todo - what's the real type? - ;; maybe its sparticle-launch-state based on heap-base. - (data uint8 :dynamic :offset-assert 64) + (data sparticle-launch-state :inline :dynamic :offset-assert 64) ) :method-count-assert 14 :size-assert #x40 :flag-assert #xe00000040 (:methods - (dummy-9 () none 9) + (initialize (_type_ sparticle-launch-group process) none 9) (dummy-10 () none 10) (dummy-11 (_type_ vector) none 11) (deactivate (_type_) none 12) @@ -13526,7 +13583,7 @@ (next-launcher basic :offset-assert 120) (cache-alpha float :offset-assert 124) (valid basic :offset-assert 128) - (key basic :offset-assert 132) + (key sparticle-launch-control :offset-assert 132) (binding sparticle-launch-state :offset-assert 136) (data uint32 1 :offset 12) (dataf float 1 :offset 12) @@ -13556,14 +13613,17 @@ (num-alloc uint32 2 :offset-assert 20) (is-3d basic :offset-assert 28) (flags uint32 :offset-assert 32) - (alloc-table uint32 :offset-assert 36) - (cpuinfo-table sparticle-cpuinfo :offset-assert 40) - (vecdata-table uint32 :offset-assert 44) - (adgifdata-table uint32 :offset-assert 48) + (alloc-table (pointer uint64) :offset-assert 36) + (cpuinfo-table (inline-array sparticle-cpuinfo) :offset-assert 40) + (vecdata-table pointer :offset-assert 44) ;; sprite-vec-data-2d or sprite-vec-data-3d + (adgifdata-table (inline-array adgif-shader) :offset-assert 48) ) :method-count-assert 9 :size-assert #x34 :flag-assert #x900000034 + (:methods + (new (symbol type int int symbol pointer (inline-array adgif-shader)) _type_ 0) + ) ) ;; - Symbols @@ -14025,7 +14085,7 @@ ;; - Types (deftype hud-icon (basic) - ((icon uint32 :offset-assert 4) + ((icon (pointer manipy) :offset-assert 4) (icon-y int32 :offset-assert 8) (icon-x int32 :offset-assert 12) (icon-z int32 :offset-assert 16) @@ -14038,7 +14098,7 @@ ) (deftype hud-particle (basic) - ((part basic :offset-assert 4) + ((part sparticle-launch-control :offset-assert 4) (init-pos vector :inline :offset-assert 16) (pos vector :inline :offset-assert 32) (prev-pos vector :inline :offset-assert 48) @@ -14176,20 +14236,59 @@ (param1 float :offset-assert 24) (param2 float :offset-assert 28) (param3 int32 :offset-assert 32) - (value-to-modify uint32 :offset-assert 36) + (value-to-modify pointer :offset-assert 36) ) :method-count-assert 9 :size-assert #x28 :flag-assert #x900000028 ) +(defenum progress-screen + :type int64 + (invalid -1) + (fuel-cell 0) + (money 1) + (buzzer 2) + (settings 3) + (game-settings 4) + (graphic-settings 5) + (sound-settings 6) + (memcard-no-space 7) + (memcard-not-inserted 8) + (memcard-not-formatted 9) + (memcard-format 10) + (memcard-data-exists 11) + (memcard-loading 12) + (memcard-saving 13) + (memcard-formatting 14) + (memcard-creating 15) + (load-game 16) + (save-game 17) + (save-game-title 18) + (memcard-insert 19) + (memcard-error-loading 20) + (memcard-error-saving 21) + (memcard-removed 22) + (memcard-no-data 23) + (memcard-error-formatting 24) + (memcard-error-creating 25) + (memcard-auto-save-error 26) + (title 27) + (settings-title 28) + (auto-save 29) + (pal-change-to-60hz 30) + (pal-now-60hz 31) + (no-disc 32) + (bad-disc 33) + (quit 34) + ) (deftype progress (process) ((current-debug-string int32 :offset-assert 112) (current-debug-language int32 :offset-assert 116) (current-debug-group int32 :offset-assert 120) (in-out-position int32 :offset-assert 124) - (display-state uint64 :offset-assert 128) - (next-display-state uint64 :offset-assert 136) + (display-state progress-screen :offset-assert 128) + (next-display-state progress-screen :offset-assert 136) (option-index int32 :offset-assert 144) (selected-option basic :offset-assert 148) (completion-percentage float :offset-assert 152) @@ -14227,68 +14326,68 @@ (total-nb-of-orbs int32 :offset-assert 284) (total-nb-of-buzzers int32 :offset-assert 288) (card-info mc-slot-info :offset-assert 292) - (last-option-index-change uint64 :offset-assert 296) + (last-option-index-change int64 :offset-assert 296) (video-mode-timeout uint64 :offset-assert 304) - (display-state-stack uint64 5 :offset-assert 312) - (option-index-stack uint32 5 :offset-assert 352) + (display-state-stack progress-screen 5 :offset-assert 312) + (option-index-stack int32 5 :offset-assert 352) (display-state-pos int32 :offset-assert 372) (nb-of-icons int32 :offset-assert 376) - (icons uint32 6 :offset-assert 380) + (icons hud-icon 6 :offset-assert 380) (max-nb-of-particles int32 :offset-assert 404) (nb-of-particles int32 :offset-assert 408) - (particles uint32 40 :offset-assert 412) - (particle-state uint32 40 :offset-assert 572) + (particles hud-particle 40 :offset-assert 412) + (particle-state int32 40 :offset-assert 572) ) :method-count-assert 59 :size-assert #x2dc - :flag-assert #x3b000002dc - ;; inherited inspect of process + :heap-base #x270 + :flag-assert #x3b027002dc (:methods - (dummy-14 () none 14) - (dummy-15 () none 15) - (dummy-16 () none 16) - (dummy-17 () none 17) + (dummy-14 (_type_) none 14) + (dummy-15 (_type_) none 15) + (dummy-16 (_type_) none 16) + (draw-progress (_type_) none 17) (dummy-18 () none 18) - (dummy-19 () none 19) + (dummy-19 (_type_) symbol 19) (hidden? (_type_) symbol 20) - (dummy-21 () none 21) - (dummy-22 () none 22) - (TODO-RENAME-23 (_type_ symbol symbol) none 23) - (dummy-24 () none 24) - (dummy-25 () none 25) - (dummy-26 () none 26) - (dummy-27 () none 27) - (dummy-28 () none 28) - (dummy-29 () none 29) - (dummy-30 () none 30) - (dummy-31 () none 31) - (dummy-32 (_type_) none 32) - (dummy-33 () none 33) - (dummy-34 () none 34) - (dummy-35 () none 35) - (dummy-36 () none 36) - (dummy-37 () none 37) - (dummy-38 () none 38) - (dummy-39 () none 39) - (dummy-40 () none 40) - (dummy-41 () none 41) - (dummy-42 () none 42) - (dummy-43 () none 43) - (dummy-44 () none 44) - (dummy-45 () none 45) - (dummy-46 () none 46) - (dummy-47 () none 47) - (dummy-48 () none 48) - (dummy-49 () none 49) - (dummy-50 () none 50) - (dummy-51 () none 51) - (dummy-52 () none 52) - (dummy-53 () none 53) - (dummy-54 () none 54) - (dummy-55 () none 55) - (dummy-56 () none 56) - (dummy-57 () none 57) - (dummy-58 () none 58) + (adjust-sprites (_type_) none 21) + (adjust-icons (_type_) none 22) + (adjust-ratios (_type_ symbol symbol) none 23) + (draw-fuel-cell-screen (_type_ int) none 24) + (draw-money-screen (_type_ int) none 25) + (draw-buzzer-screen (_type_ int) none 26) + (draw-notice-screen (_type_) none 27) + (draw-options (_type_ int int float) none 28) + (dummy-29 (_type_) none 29) + (respond-progress (_type_) none 30) + (dummy-31 (_type_) none 31) + (dummy-32 (_type_) symbol 32) + (initialize-icons (_type_) none 33) + (initialize-particles (_type_) none 34) + (draw-memcard-storage-error (_type_ font-context) none 35) + (draw-memcard-data-exists (_type_ font-context) none 36) + (draw-memcard-no-data (_type_ font-context) none 37) + (draw-memcard-accessing (_type_ font-context) none 38) + (draw-memcard-insert (_type_ font-context) none 39) + (draw-memcard-file-select (_type_ font-context) none 40) + (draw-memcard-auto-save-error (_type_ font-context) none 41) + (draw-memcard-removed (_type_ font-context) none 42) + (draw-memcard-error (_type_ font-context) none 43) + (dummy-44 (_type_) none 44) + (push! (_type_) none 45) + (pop! (_type_) none 46) + (dummy-47 (_type_) none 47) + (enter! (_type_ progress-screen int) none 48) + (draw-memcard-format (_type_ font-context) none 49) + (draw-auto-save (_type_ font-context) none 50) + (set-transition-progress! (_type_ int) none 51) + (set-transition-speed! (_type_) none 52) + (dummy-53 (_type_ progress-screen) progress-screen 53) + (draw-pal-change-to-60hz (_type_ font-context) none 54) + (draw-pal-now-60hz (_type_ font-context) none 55) + (draw-no-disc (_type_ font-context) none 56) + (draw-bad-disc (_type_ font-context) none 57) + (draw-quit (_type_ font-context) none 58) ) ) @@ -14854,8 +14953,8 @@ (define-extern sound-play-by-name (function sound-name sound-id int int int uint vector sound-id)) (define-extern sound-angle-convert (function float int)) (define-extern sound-set-ear-trans (function vector vector float int)) -(define-extern activate-progress (function process int int)) -(define-extern kset-language (function int int)) ;; unknown type +(define-extern activate-progress (function process progress-screen none)) +(define-extern kset-language (function language-enum int)) (define-extern sound-command->string (function sound-command string)) (define-extern sound-name= (function sound-name sound-name symbol)) (define-extern str-is-playing? (function symbol)) @@ -14868,7 +14967,7 @@ (define-extern sound-music-load (function sound-name int)) (define-extern sound-music-unload (function int)) (define-extern sound-reload-info (function int)) -(define-extern set-language (function int int)) +(define-extern set-language (function language-enum int)) (define-extern list-sounds (function int)) (define-extern sound-buffer-dump (function int)) (define-extern swap-sound-buffers (function vector vector float int)) @@ -15623,7 +15722,7 @@ (define-extern draw-bones-check-longest-edge function) (define-extern draw-bones-check-longest-edge-asm function) (define-extern draw-bones function) -(define-extern draw-bones-hud function) +(define-extern draw-bones-hud (function draw-control dma-buffer none)) ;; - Unknowns @@ -16327,7 +16426,7 @@ ;; - Functions (define-extern sphere-in-view-frustum? function) -(define-extern kill-all-particles-with-key function) +(define-extern kill-all-particles-with-key (function sparticle-launch-control none)) (define-extern sp-relaunch-setup-fields function) (define-extern sp-init-fields! function) (define-extern sp-launch-particles-var (function sparticle-system sparticle-launcher vector symbol symbol float none)) ;; asm - ret not confirmed @@ -16356,12 +16455,12 @@ ;;(define-extern *global-toggle* object) ;; unknown type (define-extern *part-id-table* (array sparticle-launcher)) -;;(define-extern *particle-300hz-timer* object) ;; unknown type +(define-extern *particle-300hz-timer* int) ;;(define-extern *sp-launch-queue* object) ;; unknown type ;;(define-extern *death-adgif* object) ;; unknown type (define-extern *part-group-id-table* (array sparticle-launch-group)) ;;(define-extern *sp-launcher-lock* object) ;; unknown type -;;(define-extern *sp-launcher-enable* object) ;; unknown type +(define-extern *sp-launcher-enable* symbol) ;;(define-extern *particle-adgif-cache* object) ;; unknown type @@ -16380,11 +16479,11 @@ (define-extern sparticle-60-to-50 function) (define-extern sparticle-50-to-60 function) (define-extern forall-particles function) -(define-extern sparticle-kill-it-level0 function) -(define-extern sparticle-kill-it-level1 function) -(define-extern forall-particles-with-key (function sparticle-launch-control function symbol symbol none)) +(define-extern sparticle-kill-it-level0 (function sparticle-system sparticle-cpuinfo none)) +(define-extern sparticle-kill-it-level1 (function sparticle-system sparticle-cpuinfo none)) +(define-extern forall-particles-with-key (function sparticle-launch-control (function sparticle-system sparticle-cpuinfo none) symbol symbol none)) (define-extern sparticle-kill-it (function sparticle-system sparticle-cpuinfo none)) -(define-extern forall-particles-with-key-runner (function sparticle-launch-control function sparticle-system none)) ;; TODO - not complete! +(define-extern forall-particles-with-key-runner (function sparticle-launch-control (function sparticle-system sparticle-cpuinfo none) sparticle-system none)) (define-extern sp-get-approx-alloc-size function) (define-extern sp-process-block function) (define-extern sp-copy-to-spr function) @@ -16403,7 +16502,7 @@ ;; - Unknowns -;;(define-extern *particles-flag* object) ;; unknown type +(define-extern *particles-flag* symbol) (define-extern *sp-particle-system-2d* sparticle-system) (define-extern *sp-particle-system-3d* sparticle-system) @@ -16747,7 +16846,7 @@ (save game-save :offset-assert 136) (info mc-slot-info :inline :offset-assert 140) (notify handle :offset-assert 440) - (state-time uint64 :offset-assert 448) + (state-time int64 :offset-assert 448) (part sparticle-launch-control :offset-assert 456) ) :heap-base #x160 @@ -16770,14 +16869,14 @@ ;; - Functions -(define-extern auto-save-command (function symbol int int process-tree none)) ;; TODO - not confirmed +(define-extern auto-save-command (function symbol int int process-tree none)) (define-extern auto-save-init-by-other (function symbol process-tree int int none :behavior auto-save)) (define-extern progress-allowed? (function symbol)) (define-extern print-game-text (function string font-context symbol int int float)) ; TODO decomp error, this seems correct though (define-extern get-aspect-ratio (function symbol)) (define-extern get-task-status (function game-task task-status)) (define-extern lookup-level-info (function symbol level-load-info)) -(define-extern calculate-completion (function symbol float)) +(define-extern calculate-completion (function progress float)) (define-extern game-save-elt->string (function game-save-elt string)) (define-extern progress-level-index->string (function int string)) (define-extern auto-save-post (function none :behavior auto-save)) @@ -16793,7 +16892,6 @@ (define-extern *auto-save-info* mc-slot-info) (define-extern scf-get-time (function scf-time none)) -;; ;; unknown type ;; ---------------------- @@ -16807,7 +16905,7 @@ (define-extern set-aspect-ratio (function symbol none)) (define-extern set-video-mode (function symbol none)) (define-extern scf-get-volume (function int)) -(define-extern scf-get-language (function uint)) +(define-extern scf-get-language (function language-enum)) (define-extern scf-get-aspect (function uint)) ;; - Symbols @@ -18692,7 +18790,7 @@ (define-extern process-entity-status! (function process entity-perm-status symbol int)) (define-extern process-grab? (function process symbol)) (define-extern process-release? (function process symbol)) -(define-extern ja-post (function int)) +(define-extern ja-post (function none :behavior process-drawable)) (define-extern make-nodes-from-jg (function object pair symbol int)) (define-extern dma-add-process-drawable function) (define-extern add-process-drawable function) @@ -18816,46 +18914,12 @@ ;; - Types -; (deftype target-start (process-hidden) -; ((name basic :offset-assert 4) -; (mask uint32 :offset-assert 8) -; (parent uint32 :offset-assert 12) -; (brother uint32 :offset-assert 16) -; (child uint32 :offset-assert 20) -; (ppointer uint32 :offset-assert 24) -; (self basic :offset-assert 28) -; (pool basic :offset-assert 32) -; (status basic :offset-assert 36) -; (pid int32 :offset-assert 40) -; (main-thread basic :offset-assert 44) -; (top-thread basic :offset-assert 48) -; (entity basic :offset-assert 52) -; (state basic :offset-assert 56) -; (trans-hook basic :offset-assert 60) -; (post-hook basic :offset-assert 64) -; (event-hook basic :offset-assert 68) -; (allocated-length int32 :offset-assert 72) -; (next-state basic :offset-assert 76) -; (heap-base uint32 :offset-assert 80) -; (heap-top uint32 :offset-assert 84) -; (heap-cur uint32 :offset-assert 88) -; (stack-frame-top basic :offset-assert 92) -; (heap kheap :inline :offset-assert 80) -; (connection-list 'connectable :inline :offset-assert 96) -; (stack UNKNOWN :dynamic :offset-assert 112) -; ) -; :method-count-assert 15 -; :size-assert #x70 -; :flag-assert #xf00000070 -; (:methods -; (dummy-9 () none 9) -; (dummy-10 () none 10) -; (dummy-11 () none 11) -; (dummy-12 () none 12) -; (dummy-13 () none 13) -; (dummy-14 () none 14) -; ) -; ) +(deftype target-start (process-hidden) + () + :method-count-assert 15 + :size-assert #x70 + :flag-assert #xf00000070 + ) (deftype camera-start (process-hidden) () @@ -18864,58 +18928,30 @@ :flag-assert #xf00000070 ) -; (deftype med-res-level (process-drawable) -; ((level basic :offset-assert 176) -; (part-mode basic :offset-assert 180) -; (index int32 :offset-assert 184) -; ) -; :method-count-assert 20 -; :size-assert #xbc -; :heap-base #x50 -; :flag-assert #x14005000bc -; ;; inherited inspect of process-drawable -; (:methods -; (dummy-9 () none 9) -; (dummy-10 () none 10) -; (dummy-11 () none 11) -; (dummy-12 () none 12) -; (dummy-13 () none 13) -; (dummy-14 () none 14) -; (dummy-15 () none 15) -; (dummy-16 () none 16) -; (dummy-17 () none 17) -; (dummy-18 () none 18) -; (dummy-19 () none 19) -; ) -; ) +(deftype med-res-level (process-drawable) + ((level basic :offset-assert 176) + (part-mode basic :offset-assert 180) + (index int32 :offset-assert 184) + ) + :method-count-assert 20 + :size-assert #xbc + :heap-base #x50 + :flag-assert #x14005000bc + ) -; (deftype launcher (process-drawable) -; ((spring-height meters :offset-assert 176) -; (camera basic :offset-assert 180) -; (active-distance float :offset-assert 184) -; (seek-time uint64 :offset-assert 192) -; (dest vector :inline :offset-assert 208) -; (sound-id sound-id :offset-assert 224) -; ) -; :method-count-assert 20 -; :size-assert #xe4 -; :heap-base #x80 -; :flag-assert #x14008000e4 -; ;; inherited inspect of process-drawable -; (:methods -; (dummy-9 () none 9) -; (dummy-10 () none 10) -; (dummy-11 () none 11) -; (dummy-12 () none 12) -; (dummy-13 () none 13) -; (dummy-14 () none 14) -; (dummy-15 () none 15) -; (dummy-16 () none 16) -; (dummy-17 () none 17) -; (dummy-18 () none 18) -; (dummy-19 () none 19) -; ) -; ) +(deftype launcher (process-drawable) + ((spring-height meters :offset-assert 176) + (camera basic :offset-assert 180) + (active-distance float :offset-assert 184) + (seek-time int64 :offset-assert 192) + (dest vector :inline :offset-assert 208) + (sound-id sound-id :offset-assert 224) + ) + :method-count-assert 20 + :size-assert #xe4 + :heap-base #x80 + :flag-assert #x14008000e4 + ) ;; - Functions @@ -18929,7 +18965,7 @@ (define-extern camera-look-at function) (define-extern camera-pov-from function) (define-extern command-get-trans function) -(define-extern manipy-init (function trsqv vector entity skeleton-group none)) ;; TODO - not confirmed yet +(define-extern manipy-init (function vector entity skeleton-group vector none :behavior manipy)) (define-extern part-tracker-notify function) (define-extern clone-anim-once function) (define-extern convert-to-hud-object function) @@ -18948,22 +18984,22 @@ ;; - Unknowns -;;(define-extern *particle-quat* object) ;; unknown type -;;(define-extern touch-tracker-idle object) ;; unknown type -;;(define-extern cam-launcher-longfall object) ;; unknown type -;;(define-extern cam-launcher-shortfall object) ;; unknown type -;;(define-extern launcher-idle object) ;; unknown type -;;(define-extern launcher-deactivated object) ;; unknown type -;;(define-extern launcher-active object) ;; unknown type +(define-extern *particle-quat* quaternion) ;; unknown type +(define-extern touch-tracker-idle (state touch-tracker)) ;; unknown type +(define-extern cam-launcher-longfall (state camera-tracker)) ;; unknown type +(define-extern cam-launcher-shortfall (state camera-tracker)) ;; unknown type +(define-extern launcher-idle (state launcher)) ;; unknown type +(define-extern launcher-deactivated (state launcher)) ;; unknown type +(define-extern launcher-active (state launcher)) ;; unknown type ;;(define-extern beach-part-grotto-1 object) ;; unknown type -;;(define-extern part-spawner-active object) ;; unknown type -;;(define-extern *lev-string* object) ;; unknown type -;;(define-extern med-res-level-idle object) ;; unknown type -;;(define-extern camera-tracker-process object) ;; unknown type -;;(define-extern part-tracker-process object) ;; unknown type -;;(define-extern manipy-idle object) ;; unknown type -;;(define-extern swingpole-stance object) ;; unknown type -;;(define-extern swingpole-active object) ;; unknown type +(define-extern part-spawner-active (state part-spawner)) ;; unknown type +(define-extern *lev-string* string) ;; unknown type +(define-extern med-res-level-idle (state med-res-level)) ;; unknown type +(define-extern camera-tracker-process camera-tracker) ;; unknown type +(define-extern part-tracker-process part-tracker) ;; unknown type +(define-extern manipy-idle (state manipy)) +(define-extern swingpole-stance (state swingpole)) ;; unknown type +(define-extern swingpole-active (state swingpole)) ;; unknown type ;; ---------------------- @@ -19662,7 +19698,7 @@ (define-extern guard-band-cull function) (define-extern find-instance-by-index function) (define-extern prototype-bucket-recalc-fields (function instance none)) ;; TODO - ret not confirmed -(define-extern dma-add-process-drawable-hud function) +(define-extern dma-add-process-drawable-hud (function process-drawable draw-control symbol dma-buffer none)) (define-extern foreground-engine-execute (function engine display-frame int int none)) (define-extern main-debug-hook function) (define-extern main-draw-hook (function none)) @@ -19760,12 +19796,12 @@ ;; - Functions -(define-extern display-loop (function int)) +(define-extern display-loop (function int :behavior process)) (define-extern entity-by-type (function type entity-actor)) (define-extern scf-get-territory (function int)) (define-extern pause-allowed? (function symbol)) (define-extern menu-respond-to-pause (function symbol)) -(define-extern hide-progress-screen (function int)) +(define-extern hide-progress-screen (function none)) (define-extern set-letterbox-frames (function int int)) (define-extern letterbox (function none)) (define-extern blackout (function none)) @@ -20388,8 +20424,8 @@ (define-extern othercam-calc function) (define-extern vector-for-ambient (function process-drawable vector vector)) -(define-extern hide-hud (function none)) ;; unconfirmed, see assistant-firecanyon -(define-extern hud-hidden? (function symbol)) ;; unconfirmed, see assistant-firecanyon +(define-extern hide-hud (function none)) +(define-extern hud-hidden? (function symbol)) (define-extern process-taskable-clean-up-after-talking function) (define-extern process-taskable-hide-exit function) (define-extern process-taskable-play-anim-code function) @@ -20538,14 +20574,14 @@ ;; - Symbols -(define-extern hud-arriving state) ;; unknown type +(define-extern hud-arriving (state hud)) ;; unknown type ;; - Unknowns -;;(define-extern hud-hidden object) ;; unknown type -;;(define-extern hud-leaving object) ;; unknown type -;;(define-extern hud-in object) ;; unknown type -;;(define-extern hud-collecting object) ;; unknown type +(define-extern hud-hidden (state hud)) +(define-extern hud-leaving (state hud)) +(define-extern hud-in (state hud)) +(define-extern hud-collecting (state hud)) ;; ---------------------- @@ -20828,7 +20864,7 @@ (define-extern *load-options* (array game-option)) (define-extern *save-options* (array game-option)) (define-extern *save-options-title* (array game-option)) -(define-extern *options-remap* (array array)) +(define-extern *options-remap* (array (array game-option))) (define-extern *language-name-remap* (array game-text-id)) (define-extern *task-egg-starting-x* (array int32)) (define-extern *game-counts* game-count-info) @@ -20844,19 +20880,19 @@ ;; - Functions -(define-extern part-progress-hud-left-func function) -(define-extern part-progress-hud-right-func function) -(define-extern part-progress-hud-orb-func function) -(define-extern part-progress-hud-buzzer-func function) -(define-extern part-progress-hud-button-func function) -(define-extern part-progress-hud-tint-func function) -(define-extern part-progress-card-slot-01-func function) -(define-extern part-progress-card-slot-02-func function) -(define-extern part-progress-card-slot-03-func function) -(define-extern part-progress-card-slot-04-func function) -(define-extern part-progress-card-cell-func function) -(define-extern part-progress-save-icon-func function) -(define-extern fuel-cell-progress-hud-orbit-callback function) +(define-extern part-progress-hud-left-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-hud-right-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-hud-orb-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-hud-buzzer-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-hud-button-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-hud-tint-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-card-slot-01-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-card-slot-02-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-card-slot-03-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-card-slot-04-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-card-cell-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern part-progress-save-icon-func (function sparticle-system sparticle-cpuinfo matrix none)) +(define-extern fuel-cell-progress-hud-orbit-callback (function sparticle-system sparticle-cpuinfo matrix none)) ;; ---------------------- @@ -20867,10 +20903,10 @@ ;; - Functions -(define-extern adjust-pos function) -(define-extern draw-percent-bar function) -(define-extern print-language-name function) -(define-extern hide-progress-icons function) +(define-extern adjust-pos (function int int int)) +(define-extern draw-percent-bar (function int int float int none)) +(define-extern print-language-name (function int font-context int symbol font-context)) +(define-extern hide-progress-icons (function none)) ;; ---------------------- @@ -20881,36 +20917,48 @@ ;; - Types -; (deftype progress-global-state (UNKNOWN) -; () -; :method-count-assert 0 -; :size-assert #x0 -; :flag-assert #x0 -; ;; bad get label -; ) +(deftype progress-global-state (basic) + ((aspect-ratio-choice symbol :offset-assert 4) + (video-mode-choice symbol :offset-assert 8) + (yes-no-choice symbol :offset-assert 12) + (which int32 :offset-assert 16) + (starting-state progress-screen :offset-assert 24) + (last-slot-saved int32 :offset-assert 32) + (slider-backup float :offset-assert 36) + (language-backup int64 :offset-assert 40) + (on-off-backup symbol :offset-assert 48) + (center-x-backup int32 :offset-assert 52) + (center-y-backup int32 :offset-assert 56) + (aspect-ratio-backup symbol :offset-assert 60) + (last-slider-sound int64 :offset-assert 64) + ) + :method-count-assert 9 + :size-assert #x48 + :flag-assert #x900000048 + ) ;; - Functions -(define-extern get-next-task-up function) -(define-extern get-next-level-up function) -(define-extern get-next-level-down function) -(define-extern get-next-task-down function) -(define-extern make-levels-with-tasks-available-to-progress function) -(define-extern progress-init-by-other function) -(define-extern init-game-options function) +(define-extern get-next-task-up (function int int int)) +(define-extern get-next-level-up (function int int)) +(define-extern get-next-level-down (function int int)) +(define-extern get-next-task-down (function int int int)) +(define-extern make-levels-with-tasks-available-to-progress (function none)) +(define-extern progress-init-by-other (function none :behavior progress)) +(define-extern init-game-options (function progress none)) (define-extern make-current-level-available-to-progress (function none)) ;; - Unknowns -;;(define-extern progress-normal object) ;; unknown type -;;(define-extern progress-going-out object) ;; unknown type -;;(define-extern progress-gone object) ;; unknown type -;;(define-extern *progress-state* object) ;; unknown type -;;(define-extern *progress-save-info* object) ;; unknown type -;;(define-extern progress-coming-in object) ;; unknown type -;;(define-extern *progress-stack* object) ;; unknown type -;;(define-extern progress-waiting object) ;; unknown type -;;(define-extern progress-debug object) ;; unknown type +(define-extern progress-normal (state progress)) +(define-extern progress-going-out (state progress)) +(define-extern progress-gone (state progress)) +(define-extern *progress-state* progress-global-state) +(define-extern *progress-save-info* mc-slot-info) +(define-extern progress-coming-in (state progress)) +(define-extern *progress-stack* (pointer uint8)) +(define-extern progress-waiting (state progress)) +(define-extern progress-debug (state progress)) ;; ---------------------- @@ -22139,7 +22187,7 @@ (TODO-RENAME-34 (_type_) none 34) ) ) - + ;; - Functions diff --git a/decompiler/config/jak1_ntsc_black_label/anonymous_function_types.jsonc b/decompiler/config/jak1_ntsc_black_label/anonymous_function_types.jsonc index a9077916ae..5fbd0f145b 100644 --- a/decompiler/config/jak1_ntsc_black_label/anonymous_function_types.jsonc +++ b/decompiler/config/jak1_ntsc_black_label/anonymous_function_types.jsonc @@ -10,7 +10,7 @@ "hud": [[15, "(function basic int basic event-message-block object)"]], - "main": [[4, "(function none)"]], + "main": [[4, "(function none :behavior process)"]], "process-drawable": [[29, "(function string symbol)"]], diff --git a/decompiler/config/jak1_ntsc_black_label/hacks.jsonc b/decompiler/config/jak1_ntsc_black_label/hacks.jsonc index 5b50c924a4..721b9be616 100644 --- a/decompiler/config/jak1_ntsc_black_label/hacks.jsonc +++ b/decompiler/config/jak1_ntsc_black_label/hacks.jsonc @@ -504,5 +504,40 @@ "blerc-execute":[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33], "(method 11 fact-info-target)":[42], "(code format-card auto-save)":[3, 4, 5, 6, 7, 8] + }, + + // Sometimes the game might use format strings that are fetched dynamically, + // for example using the game text lookup method + // Add information about those format instructions here. + // e.g. "function-name":[[op, argc], [op, argc], ...] + // where "op" is the op number for the call to format. + "dynamic_format_arg_counts": { + "(method 35 progress)":[ + [44, 1], + [92, 1] + ], + "(method 49 progress)":[ + [35, 1] + ], + "(method 37 progress)":[ + [41, 1] + ], + "(method 38 progress)":[ + [106, 1] + ], + "(method 39 progress)":[ + [41, 1] + ], + "(method 41 progress)":[ + [73, 1] + ], + "(method 42 progress)":[ + [41, 1] + ], + "(method 43 progress)":[ + [51, 1], + [94, 1] + ], + "":[] } } diff --git a/decompiler/config/jak1_ntsc_black_label/label_types.jsonc b/decompiler/config/jak1_ntsc_black_label/label_types.jsonc index 25eb1a5c27..c2a93fcd94 100644 --- a/decompiler/config/jak1_ntsc_black_label/label_types.jsonc +++ b/decompiler/config/jak1_ntsc_black_label/label_types.jsonc @@ -375,7 +375,7 @@ "anim-tester": [ ["L509", "(inline-array list-field)", 12] ], - + "default-menu": [ ["L6251", "float", true], ["L6252", "float", true], @@ -402,13 +402,13 @@ ["L6271", "uint64", true] // ["L6268", "(array int)", true, 1] // printed as a float ], - + // "default-menu": [ // ["L519", "pair", true], // ["L1550", "pair", true], // ["L1552", "pair", true] // ], - + // "generic-vu1": [ // ["L12", "gif-tag64", true], // ["L15", "gif-tag64", true], @@ -443,6 +443,80 @@ ["L71", "vector"] ], + "progress": [ + ["L667", "uint64", true], + ["L586", "float", true], + ["L587", "float", true], + ["L588", "float", true], + ["L589", "float", true], + ["L590", "float", true], + ["L591", "float", true], + ["L592", "float", true], + ["L593", "float", true], + ["L594", "float", true], + ["L595", "float", true], + ["L596", "float", true], + ["L597", "float", true], + ["L598", "float", true], + ["L599", "float", true], + ["L600", "float", true], + ["L601", "float", true], + ["L602", "float", true], + ["L603", "float", true], + ["L604", "float", true], + ["L605", "float", true], + ["L606", "float", true], + ["L607", "float", true], + ["L608", "float", true], + ["L609", "float", true], + ["L610", "float", true], + ["L611", "float", true], + ["L612", "float", true], + ["L613", "float", true], + ["L614", "float", true], + ["L615", "float", true], + ["L617", "float", true], + ["L616", "float", true], + ["L618", "float", true], + ["L619", "float", true], + ["L620", "float", true], + ["L621", "float", true], + ["L622", "float", true], + ["L623", "float", true], + ["L624", "float", true], + ["L625", "float", true], + ["L626", "float", true], + ["L627", "float", true], + ["L628", "float", true], + ["L629", "float", true], + ["L630", "float", true], + ["L631", "float", true], + ["L632", "float", true], + ["L633", "float", true], + ["L634", "float", true], + ["L635", "float", true], + ["L583", "vector"], + ["L581", "vector"], + ["L579", "vector"], + ["L577", "vector"], + ["L573", "vector"], + ["L575", "vector"], + ["L636", "uint64", true], + ["L637", "uint64", true], + ["L638", "uint64", true], + ["L639", "uint64", true], + ["L640", "uint64", true], + ["L641", "uint64", true], + ["L642", "uint64", true], + ["L643", "uint64", true], + ["L644", "uint64", true], + ["L645", "uint64", true], + ["L646", "uint64", true], + ["L647", "uint64", true], + ["L648", "uint64", true], + ["L649", "uint64", true] + ], + "target-part": [ ["L336", "float", true], ["L337", "float", true], @@ -456,6 +530,10 @@ ["L150", "attack-info"] ], + "generic-obs": [ + ["L455", "quaternion"] + ], + "blocking-plane": [ ["L18", "vector"], ["L19", "vector"], diff --git a/decompiler/config/jak1_ntsc_black_label/stack_structures.jsonc b/decompiler/config/jak1_ntsc_black_label/stack_structures.jsonc index 56a9dc3d6c..3b96d26c71 100644 --- a/decompiler/config/jak1_ntsc_black_label/stack_structures.jsonc +++ b/decompiler/config/jak1_ntsc_black_label/stack_structures.jsonc @@ -1,4 +1,9 @@ { + "run-function-in-process": [ + [16, ["array", "uint64", 6]], + [64, "catch-frame"] + ], + "matrixp*!": [[16, "matrix"]], "vector3s-matrix*!": [[16, "vector"]], @@ -551,11 +556,11 @@ [16, "event-message-block"], [96, "event-message-block"] ], - + "(method 43 farmer)": [ [16, "vector"] ], - + "yakow-post": [ [16, "vector"], [32, "vector"], @@ -564,7 +569,7 @@ [80, "vector"], [96, "vector"] ], - + "anim-tester-save-object-seqs": [ [16, "file-stream"] ], @@ -581,13 +586,13 @@ "anim-tester-add-newobj": [[16, "event-message-block"]], "anim-tester-start": [[16, "event-message-block"]], "anim-tester-add-sequence": [[16, "event-message-block"]], - + "(anon-function 28 task-control)": [[16, "event-message-block"]], "instance-tfragment-add-debug-sphere": [ [16, "vector"] ], - + "(method 10 game-save)": [[16, "file-stream"]], "cam-state-from-entity": [[16, "curve"]], @@ -727,7 +732,7 @@ [32, "quaternion"], [48, "vector"] ], - + "ocean-make-trans-camera-masks": [ [16, "vector"], [32, "vector"] @@ -828,11 +833,11 @@ "(method 43 mayor)": [ [16, "vector"] ], - + "(method 10 tippy)": [ [16, "vector"] ], - + "compute-and-draw-shadow": [ [16, "vector"], [32, "vector"], @@ -944,8 +949,8 @@ "draw-string-xy": [ [16, "font-context"] - ], - + ], + "(method 50 nav-enemy)": [ [16, "vector"] ], @@ -1145,6 +1150,23 @@ [16, "vector"] ], + "(method 33 progress)": [[16, "event-message-block"]], + "hide-progress-screen": [[16, "event-message-block"]], + "progress-init-by-other": [[16, "quaternion"]], + "(post progress-debug)": [[16, "font-context"]], + "(post progress-normal)": [[16, "font-context"]], + "(code progress-normal)": [[16, "event-message-block"]], + "fuel-cell-progress-hud-orbit-callback": [ + [16, "vector"], + [32, "vector"] + ], + "(method 24 progress)": [[16, "font-context"]], + "(method 25 progress)": [[16, "font-context"]], + "(method 26 progress)": [[16, "font-context"]], + "(method 17 progress)": [[16, "font-context"]], + "(method 28 progress)": [[16, "font-context"]], + "(method 27 progress)": [[16, "font-context"]], + "(method 11 fact-info-target)": [ [16, "event-message-block"] ], diff --git a/decompiler/config/jak1_ntsc_black_label/type_casts.jsonc b/decompiler/config/jak1_ntsc_black_label/type_casts.jsonc index c8a55e670c..51a6908248 100644 --- a/decompiler/config/jak1_ntsc_black_label/type_casts.jsonc +++ b/decompiler/config/jak1_ntsc_black_label/type_casts.jsonc @@ -90,6 +90,8 @@ [17, "s5", "pointer"] ], + "run-function-in-process": [[40, "a0", "dead-pool-heap"]], + // GSTRING "name=": [ [26, "a1", "symbol"], @@ -1571,14 +1573,16 @@ [[12, 20], "a0", "dma-packet"], [[45, 52], "a0", "dma-packet"], [[69, 76], "a0", "dma-packet"], - [[80, 87], "v1", "dma-packet"] + [[80, 87], "v1", "dma-packet"], + [65, "a3", "int"] ], "sprite-add-3d-chunk": [ [[11, 19], "a0", "dma-packet"], [[44, 51], "a0", "dma-packet"], [[68, 75], "a0", "dma-packet"], - [[79, 87], "v1", "dma-packet"] + [[79, 87], "v1", "dma-packet"], + [65, "a3", "int"] ], "sprite-add-shadow-chunk": [ @@ -1902,7 +1906,7 @@ [70, "s4", "twist-joint"], [82, "s4", "twist-joint"] ], - + "(code teetertotter-launch)": [ [11, "v1", "art-joint-anim"] ], @@ -1918,7 +1922,7 @@ "(method 11 silostep)": [ [100, "v1", "art-joint-anim"] ], - + "(enter plat-button-pressed sunken-elevator)": [ [40, "v1", "village2cam"], [73, "v1", "village2cam"] @@ -2055,6 +2059,10 @@ [[33, 35], "v1", "merc-ctrl"] ], + "(method 9 screen-filter)": [ + [[23, 26], "v1", "dma-packet"] + ], + "(method 48 mayor)": [ [32, "a0", "int"] ], @@ -2063,6 +2071,10 @@ [19, "v1", "float"] ], + "(post idle mayor)": [ + [4, "t9", "(function none)"] + ], + "(method 43 bird-lady)": [ [19, "v1", "float"] ], @@ -2205,6 +2217,79 @@ [19, "v1", "float"] ], + "(method 33 progress)": [ + [30, "t9", "(function process function object object object object object)"], + [159, "t9", "(function process function object object object object object)"], + [288, "t9", "(function process function object object object object object)"], + [417, "t9", "(function process function object object object object object)"], + [546, "t9", "(function process function object object object object object)"], + [675, "t9", "(function process function object object object object object)"], + [35, "a0", "manipy"], + [38, "v1", "manipy"], + [50, "v1", "manipy"], + [98, "v1", "manipy"], + [164, "a0", "manipy"], + [167, "v1", "manipy"], + [179, "v1", "manipy"], + [227, "v1", "manipy"], + [293, "a0", "manipy"], + [296, "v1", "manipy"], + [308, "v1", "manipy"], + [356, "v1", "manipy"], + [422, "a0", "manipy"], + [425, "v1", "manipy"], + [437, "v1", "manipy"], + [485, "v1", "manipy"], + [551, "a0", "manipy"], + [554, "v1", "manipy"], + [566, "v1", "manipy"], + [614, "v1", "manipy"], + [680, "a0", "manipy"], + [683, "v1", "manipy"], + [695, "v1", "manipy"], + [743, "v1", "manipy"] + ], + + "fuel-cell-progress-hud-orbit-callback": [ + [[0, 199], "s5", "progress"], + [4, "f0", "float"] + ], + + "(method 7 progress)": [ + [16, "a2", "pointer"] + ], + + "(method 17 progress)": [ + [[466, 471], "v1", "dma-packet"], + [[154, 159], "v1", "dma-packet"] + ], + + "(post progress-debug)": [ + [[61, 66], "v1", "dma-packet"], + [[108, 113], "v1", "dma-packet"], + [[153, 158], "v1", "dma-packet"], + [[198, 203], "v1", "dma-packet"] + ], + + "(method 23 progress)": [ + [103, "v1", "float"] + ], + + "(post progress-normal)": [ + [416, "a0", "float"] + ], + + "(method 53 progress)": [ + [[0, 999], "gp", "progress-screen"] + ], + "(method 35 progress)": [[38, "s4", "game-text-id"]], + "(method 43 progress)": [[45, "s4", "game-text-id"]], + "(method 38 progress)": [[58, "a1", "game-text-id"]], + + "draw-percent-bar": [ + [[33, 38], "v1", "dma-packet"] + ], + "(method 11 fact-info-target)": [ [135, "v1", "target"], [148, "v1", "collide-shape"], @@ -2529,7 +2614,7 @@ "cam-master-effect": [ [[0, 999], "s6", "camera-master"] ], - + "birth-func-vector-orient": [ [[7, 24], "s3", "sprite-vec-data-2d"] ], @@ -2619,6 +2704,13 @@ [70, "v1", "process-mask"] ], + "manipy-init": [[143, "a0", "collide-shape"]], + + "forall-particles-with-key-runner": [ + [32, "s3", "(inline-array sparticle-cpuinfo)"], + [42, "s3", "(inline-array sparticle-cpuinfo)"] + ], + "(trans plat-button-move-downward jungle-elevator)": [ [11, "v0", "(state plat-button)"] ], diff --git a/decompiler/config/jak1_ntsc_black_label/var_names.jsonc b/decompiler/config/jak1_ntsc_black_label/var_names.jsonc index 3db9c8c197..1624d4d410 100644 --- a/decompiler/config/jak1_ntsc_black_label/var_names.jsonc +++ b/decompiler/config/jak1_ntsc_black_label/var_names.jsonc @@ -3229,6 +3229,13 @@ } }, + "(method 9 screen-filter)": { + "vars": { + "v1-4":["v1-4", "dma-packet"], + "s5-0":"buf" + } + }, + "(method 11 fact-info-target)": { "args":["obj", "kind", "amount", "source-handle"], "vars":{"f0-29":"buzz-count","f30-0":"eco-lev"} @@ -3349,7 +3356,98 @@ "s5-1": ["s5-1", "handle"] } }, + + "draw-percent-bar": { + "vars": { + "v1-3": ["v1-3", "dma-packet"] + } + }, + + "(dummy-17 progress)": { + "vars": { + "v1-20": ["v1-20", "dma-packet"], + "v1-81": ["v1-81", "dma-packet"] + } + }, + + "make-current-level-available-to-progress": { + "vars": { + "a0-0": "cur-lev", + "v1-7": "lev-idx" + } + }, + + "make-levels-with-tasks-available-to-progress": { + "vars": { + "gp-0": "i", + "s4-0": "ii", + "s5-0": "tasks" + } + }, + + "get-next-task-up": { + "args": ["cur-task-idx", "lev-idx"] + }, + "get-next-task-down": { + "args": ["cur-task-idx", "lev-idx"] + }, + "get-next-level-up": { + "args": ["lev-idx"] + }, + "get-next-level-down": { + "args": ["lev-idx"] + }, + + "calculate-completion": { + "args": ["the-progress"], + "vars": { + "sv-40":"total-cells", + "sv-48":"total-buzzers", + "sv-56":"total-orbs", + "sv-16":"current-cells", + "sv-24":"current-buzzers", + "sv-32":"current-orbs" + } + }, + "(method 48 progress)": { + "args": ["obj", "screen", "option"] + }, + + "activate-progress": { + "args": ["creator", "screen"] + }, + + "(method 23 progress)": { + "args": ["obj", "aspect", "video-mode"] + }, + + "(method 35 progress)": { + "vars": { + "s4-0": ["s4-0", "game-text-id"] + } + }, + + "(method 43 progress)": { + "vars": { + "s4-0": ["s4-0", "game-text-id"] + } + }, + + "(method 38 progress)": { + "vars": { + "a1-1": ["a1-1", "game-text-id"] + } + }, + + "(post progress-debug)": { + "vars": { + "v1-7": ["v1-7", "dma-packet"], + "v1-16": ["v1-16", "dma-packet"], + "v1-25": ["v1-25", "dma-packet"], + "v1-34": ["v1-34", "dma-packet"] + } + }, "aaaaaaaaaaaaaaaaaaaaaaa": {} } diff --git a/decompiler/util/DecompilerTypeSystem.cpp b/decompiler/util/DecompilerTypeSystem.cpp index a274a6d5c1..b9894d2551 100644 --- a/decompiler/util/DecompilerTypeSystem.cpp +++ b/decompiler/util/DecompilerTypeSystem.cpp @@ -395,8 +395,9 @@ int DecompilerTypeSystem::get_format_arg_count(const std::string& str) const { return bad_it->second; } - std::vector single_char_ignore_list = {'%', 'T'}; - std::vector double_two_char_ignore_list = {"0L", "3L", "1K", "2j", "0k"}; + static const std::vector single_char_ignore_list = {'%', 'T'}; + static const std::vector multi_char_ignore_list = {"0L", "1L", "3L", "1K", + "2j", "0k", "30L"}; int arg_count = 0; for (size_t i = 0; i < str.length(); i++) { @@ -412,12 +413,17 @@ int DecompilerTypeSystem::get_format_arg_count(const std::string& str) const { } } - for (std::string code : double_two_char_ignore_list) { + for (auto& code : multi_char_ignore_list) { if (i + 1 < str.length() && code.length() == 2 && (str.at(i) == code.at(0)) && str.at(i + 1) == code.at(1)) { code_takes_no_arg = true; break; } + if (i + 2 < str.length() && code.length() == 3 && (str.at(i) == code.at(0)) && + str.at(i + 1) == code.at(1) && str.at(i + 2) == code.at(2)) { + code_takes_no_arg = true; + break; + } } if (!code_takes_no_arg) { @@ -436,6 +442,23 @@ int DecompilerTypeSystem::get_format_arg_count(const TP_Type& type) const { } } +int DecompilerTypeSystem::get_dynamic_format_arg_count(const std::string& func_name, + int op_idx) const { + auto kv = format_ops_with_dynamic_string_by_func_name.find(func_name); + if (kv == format_ops_with_dynamic_string_by_func_name.end()) { + throw std::runtime_error(fmt::format("Unknown dynamic format string.")); + } else { + auto& formats = kv->second; + auto the_format = + std::find_if(formats.begin(), formats.end(), + [op_idx](const std::vector vec) { return vec.at(0) == op_idx; }); + if (the_format == formats.end()) { + throw std::runtime_error(fmt::format("Unknown dynamic format string.")); + } + return the_format->at(1); + } +} + TypeSpec DecompilerTypeSystem::lookup_symbol_type(const std::string& name) const { auto kv = symbol_types.find(name); if (kv == symbol_types.end()) { diff --git a/decompiler/util/DecompilerTypeSystem.h b/decompiler/util/DecompilerTypeSystem.h index 03f2eb0639..619a8da4e0 100644 --- a/decompiler/util/DecompilerTypeSystem.h +++ b/decompiler/util/DecompilerTypeSystem.h @@ -18,6 +18,8 @@ class DecompilerTypeSystem { std::unordered_map type_flags; std::unordered_map type_parents; std::unordered_map bad_format_strings; + std::unordered_map>> + format_ops_with_dynamic_string_by_func_name; void add_symbol(const std::string& name) { if (symbols.find(name) == symbols.end()) { @@ -42,6 +44,7 @@ class DecompilerTypeSystem { bool tp_lca(TypeState* combined, const TypeState& add); int get_format_arg_count(const std::string& str) const; int get_format_arg_count(const TP_Type& type) const; + int get_dynamic_format_arg_count(const std::string& func_name, int op_idx) const; TypeSpec lookup_symbol_type(const std::string& name) const; bool should_attempt_cast_simplify(const TypeSpec& expected, const TypeSpec& actual) const; diff --git a/decompiler/util/data_decompile.cpp b/decompiler/util/data_decompile.cpp index c730d52cf7..22bdb05623 100644 --- a/decompiler/util/data_decompile.cpp +++ b/decompiler/util/data_decompile.cpp @@ -364,7 +364,8 @@ goos::Object decomp_ref_to_inline_array_guess_size( int size_bytes = end_label.offset - start_label.offset; int size_elts = size_bytes / stride; // 32 bytes per ocean-near-index int leftover_bytes = size_bytes % stride; - // fmt::print("Size is {} bytes: {} elts, {} left over\n", size_bytes, size_elts, leftover_bytes); + // fmt::print("Size is {} bytes ({} elts), with {} bytes left over\n", size_bytes, + // size_elts,leftover_bytes); // if we have leftover, should verify that its all zeros, or that it's the type pointer // of the next basic in the data section. diff --git a/game/graphics/gfx.cpp b/game/graphics/gfx.cpp index 14323c47a1..7a39294dfb 100644 --- a/game/graphics/gfx.cpp +++ b/game/graphics/gfx.cpp @@ -122,9 +122,6 @@ u32 Init() { void Loop(std::function f) { lg::info("GFX Loop"); while (f()) { - // clean the inputs - Pad::ClearKeys(); - // check if we have a display if (Display::GetMainDisplay()) { // lg::debug("run display"); diff --git a/game/kernel/kboot.cpp b/game/kernel/kboot.cpp index c7e6bbeb91..6e91d546ed 100644 --- a/game/kernel/kboot.cpp +++ b/game/kernel/kboot.cpp @@ -92,8 +92,8 @@ s32 goal_main(int argc, const char* const* argv) { // Set up game configurations masterConfig.aspect = (u16)sceScfGetAspect(); masterConfig.language = (u16)sceScfGetLanguage(); - masterConfig.inactive_timeout = 0; - masterConfig.timeout = 0; + masterConfig.inactive_timeout = 0; // demo thing + masterConfig.timeout = 0; // demo thing masterConfig.volume = 100; // Set up language configuration @@ -118,6 +118,9 @@ s32 goal_main(int argc, const char* const* argv) { masterConfig.aspect = SCE_ASPECT_FULL; } + // Added - the territory is originally hardcoded. this allows us to change it whenever. + masterConfig.territory = GAME_TERRITORY_SCEA; + // In retail game, disable debugging modes, and force on DiskBoot // MasterDebug = 0; // DiskBoot = 1; diff --git a/game/kernel/kboot.h b/game/kernel/kboot.h index 779d905f8e..2f652b612b 100644 --- a/game/kernel/kboot.h +++ b/game/kernel/kboot.h @@ -7,6 +7,10 @@ #include "common/common_types.h" +#define GAME_TERRITORY_SCEA 0 // sony america +#define GAME_TERRITORY_SCEE 1 // sony europe +#define GAME_TERRITORY_SCEI 2 // sony inc. (japan) + struct MasterConfig { u16 language; //! GOAL language 0 u16 aspect; //! SCE_ASPECT 2 @@ -14,6 +18,8 @@ struct MasterConfig { u16 inactive_timeout; // todo 6 u16 timeout; // todo 8 u16 volume; // todo 12 + + u16 territory; // added. this is normally burnt onto the disc executable. }; // Level to load on boot diff --git a/game/kernel/kmachine.cpp b/game/kernel/kmachine.cpp index 1553662bfe..84f459bbf8 100644 --- a/game/kernel/kmachine.cpp +++ b/game/kernel/kmachine.cpp @@ -499,7 +499,7 @@ u64 CPadGetData(u64 cpad_info) { cpad->state = 99; } else { // we have actuators to use. - cpad->change_time = 1; // remember to update vibration. + cpad->change_time = 1; // remember to update pad times. cpad->state = 75; } break; @@ -672,8 +672,10 @@ u64 DecodeVolume() { return masterConfig.volume; } +// NOTE: this is originally hardcoded, and returns different values depending on the disc region. +// it returns 0 for NTSC-U, 1 for PAL and 2 for NTSC-J u64 DecodeTerritory() { - return 0; + return masterConfig.territory; } u64 DecodeTimeout() { diff --git a/game/kernel/kmemcard.cpp b/game/kernel/kmemcard.cpp index 827aa5a695..85ec741111 100644 --- a/game/kernel/kmemcard.cpp +++ b/game/kernel/kmemcard.cpp @@ -640,4 +640,4 @@ void cb_closedfile(s32 sync_result) { void cb_reprobe_save(s32) { assert(false); -} \ No newline at end of file +} diff --git a/game/sce/libpad.cpp b/game/sce/libpad.cpp index 3b0b688a6f..0979d9c8f2 100644 --- a/game/sce/libpad.cpp +++ b/game/sce/libpad.cpp @@ -84,6 +84,9 @@ int scePadRead(int port, int /*slot*/, u8* rdata) { cpad->button0 |= Gfx::PadIsPressed((Pad::Button)i, port) << i; } + // keys polled and read, prepare for new ones. + Pad::ClearKeys(); + return 32; } diff --git a/game/sce/libscf.h b/game/sce/libscf.h index f8e8c4b7df..5df7524b39 100644 --- a/game/sce/libscf.h +++ b/game/sce/libscf.h @@ -1,8 +1,5 @@ #pragma once -#ifndef JAK1_LIBSCF_H -#define JAK1_LIBSCF_H - #define SCE_JAPANESE_LANGUAGE 0 #define SCE_ENGLISH_LANGUAGE 1 #define SCE_FRENCH_LANGUAGE 2 @@ -29,5 +26,3 @@ int sceScfGetAspect(); */ int sceScfGetLanguage(); } // namespace ee - -#endif // JAK1_LIBSCF_H diff --git a/game/system/newpad.cpp b/game/system/newpad.cpp index e9b2bd1837..94d7011d91 100644 --- a/game/system/newpad.cpp +++ b/game/system/newpad.cpp @@ -140,6 +140,9 @@ void DefaultMapping(MappingInfo& mapping) { MapButton(mapping, Button::Down, 0, GLFW_KEY_DOWN); MapButton(mapping, Button::Left, 0, GLFW_KEY_LEFT); + // start for progress + MapButton(mapping, Button::Start, 0, GLFW_KEY_ENTER); + // l3/r3 for menu MapButton(mapping, Button::L3, 0, GLFW_KEY_COMMA); MapButton(mapping, Button::R3, 0, GLFW_KEY_PERIOD); diff --git a/goal_src/engine/ambient/weather-part.gc b/goal_src/engine/ambient/weather-part.gc index 880a8d521a..ae3e9e67a5 100644 --- a/goal_src/engine/ambient/weather-part.gc +++ b/goal_src/engine/ambient/weather-part.gc @@ -1510,7 +1510,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'check-drop-level-rain + :sym 'check-drop-level-rain ) (new 'static 'sp-field-init-spec :field #x3f @@ -2130,7 +2130,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2216,7 +2216,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2302,7 +2302,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2393,7 +2393,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2477,7 +2477,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2561,7 +2561,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) diff --git a/goal_src/engine/collide/collide-touch-h.gc b/goal_src/engine/collide/collide-touch-h.gc index 373d6e5f7f..6c6d54298a 100644 --- a/goal_src/engine/collide/collide-touch-h.gc +++ b/goal_src/engine/collide/collide-touch-h.gc @@ -119,14 +119,14 @@ :size-assert #x208 :flag-assert #xf00000208 (:methods - (new (symbol type) _type_ 0) - (dummy-9 () none 9) - (dummy-10 () none 10) - (dummy-11 () none 11) - (dummy-12 () none 12) - (dummy-13 () none 13) - (dummy-14 () none 14) - ) + (new (symbol type) _type_ 0) + (dummy-9 () none 9) + (dummy-10 () none 10) + (dummy-11 () none 11) + (dummy-12 () none 12) + (dummy-13 () none 13) + (dummy-14 (_type_) none 14) + ) ) (defmethod new touching-list ((allocation symbol) (type-to-make type)) diff --git a/goal_src/engine/debug/debug.gc b/goal_src/engine/debug/debug.gc index 832207c4ed..8030e9c416 100644 --- a/goal_src/engine/debug/debug.gc +++ b/goal_src/engine/debug/debug.gc @@ -849,6 +849,31 @@ (let ((gp-0 (new 'static 'inline-array vector 32 ;; was originally 8, which is too small and would cause memory corruption + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + ;; added + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) + (new 'static 'vector) (new 'static 'vector) (new 'static 'vector) (new 'static 'vector) diff --git a/goal_src/engine/debug/default-menu.gc b/goal_src/engine/debug/default-menu.gc index 20c95453c5..449b4adc38 100644 --- a/goal_src/engine/debug/default-menu.gc +++ b/goal_src/engine/debug/default-menu.gc @@ -442,9 +442,9 @@ ;; definition for function dm-setting-language (defun dm-setting-language ((arg0 function) (arg1 int)) (if (= arg1 4) - (set! (-> *setting-control* default language) (/ (the-as int arg0) 8)) + (set! (-> *setting-control* default language) (the-as language-enum (/ (the-as int arg0) 8))) ) - (= (-> *setting-control* default language) (/ (the-as int arg0) 8)) + (= (-> *setting-control* default language) (the-as language-enum (/ (the-as int arg0) 8))) ) ;; definition for function dm-current-continue diff --git a/goal_src/engine/draw/drawable.gc b/goal_src/engine/draw/drawable.gc index 16a4198467..e456531b0c 100644 --- a/goal_src/engine/draw/drawable.gc +++ b/goal_src/engine/draw/drawable.gc @@ -495,18 +495,18 @@ ) ) ;;(cpu-usage) - (__send-gfx-dma-chain (the-as dma-bank-source #x10009000) - (cond - ;; some buffer for debugging, not used - (*surrogate-dma-buffer* - *surrogate-dma-buffer* - ) - (else - (-> dma-buf-to-send data-buffer) - ) - ) + (__send-gfx-dma-chain (the-as dma-bank-source #x10009000) + (cond + ;; some buffer for debugging, not used + (*surrogate-dma-buffer* + *surrogate-dma-buffer* + ) + (else + (-> dma-buf-to-send data-buffer) + ) ) - ) + ) + ) ) (determine-pause-mode) @@ -532,3 +532,12 @@ (display-frame-finish disp) (display-sync disp) ;; also starts next ) + +;; TODO stub +(defun dma-add-process-drawable-hud ((arg0 process-drawable) (arg1 draw-control) (arg2 symbol) (arg3 dma-buffer)) + (set! (-> arg1 status) (logand -9 (-> arg1 status))) + (when (zero? (logand (-> arg1 status) 22)) + (logior! (-> arg1 status) 8) + ) + (none) + ) diff --git a/goal_src/engine/draw/process-drawable.gc b/goal_src/engine/draw/process-drawable.gc index 8bb10a7337..61e759b7a2 100644 --- a/goal_src/engine/draw/process-drawable.gc +++ b/goal_src/engine/draw/process-drawable.gc @@ -6,7 +6,7 @@ ;; dgos: GAME, ENGINE ;; TODO - for water-anim | sunken-elevator -(define-extern ja-post (function int)) +(define-extern ja-post (function none :behavior process-drawable)) ;; TODO - for rigid-body (define-extern rider-post (function int)) (define-extern transform-post (function int)) diff --git a/goal_src/engine/game/collectables.gc b/goal_src/engine/game/collectables.gc index d3cd21db93..3b6f7733a0 100644 --- a/goal_src/engine/game/collectables.gc +++ b/goal_src/engine/game/collectables.gc @@ -9,6 +9,7 @@ (define-extern birth-pickup-at-point (function vector int float symbol process-drawable symbol none)) ;; TODO - unconfirmed - see beach-rocks ;; TODO - for oracle (define-extern *fuel-cell-sg* skeleton-group) ;; unknown type +(define-extern *money-sg* skeleton-group) ;; unknown type ;; TODO - for entity and beach-rocks (deftype collectable (process-drawable) ((pickup-type int32 :offset-assert 176) diff --git a/goal_src/engine/game/game-save.gc b/goal_src/engine/game/game-save.gc index 02901e5744..52fcd2b0df 100644 --- a/goal_src/engine/game/game-save.gc +++ b/goal_src/engine/game/game-save.gc @@ -318,7 +318,7 @@ (set! (-> arg0 fuel-cell-count) (-> obj fuel)) (set! (-> arg0 money-count) (-> obj money-total)) (set! (-> arg0 buzzer-count) (-> obj buzzer-total)) - (set! (-> arg0 completion-percentage) (calculate-completion #f)) + (set! (-> arg0 completion-percentage) (calculate-completion (the-as progress #f))) (when (string= (-> obj current-continue name) "title-start") (set! (-> arg0 new-game) 1) (set! (-> arg0 level-index) (-> (lookup-level-info 'training) index)) @@ -1262,7 +1262,7 @@ (set! (-> *setting-control* default dialog-volume) (-> save-data user-float0)) ) ((= a0-1 (game-save-elt language)) - (set! (-> *setting-control* default language) (the-as int (-> save-data user-uint64))) + (set! (-> *setting-control* default language) (the-as language-enum (-> save-data user-uint64))) ) ((= a0-1 (game-save-elt vibration)) (set! (-> *setting-control* default vibration) (= (-> save-data user-uint64) 1)) @@ -1612,8 +1612,7 @@ ;; used for the flashing auto-save icon, I think. -(set! - (-> *part-group-id-table* 656) +(set! (-> *part-group-id-table* 656) (new 'static 'sparticle-launch-group :length 1 :duration #xbb8 @@ -1629,8 +1628,7 @@ ) ;; todo floats/ints for these values. -(set! - (-> *part-id-table* 2662) +(set! (-> *part-id-table* 2662) (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 11 @@ -1700,17 +1698,17 @@ (define *auto-save-info* (new 'global 'mc-slot-info)) (deftype auto-save (process) - ((card int32 :offset-assert 112) - (slot int32 :offset-assert 116) - (which int32 :offset-assert 120) - (buffer kheap :offset-assert 124) - (mode basic :offset-assert 128) - (result mc-status-code :offset-assert 132) - (save game-save :offset-assert 136) - (info mc-slot-info :inline :offset-assert 140) - (notify handle :offset-assert 440) - (state-time uint64 :offset-assert 448) - (part sparticle-launch-control :offset-assert 456) + ((card int32 :offset-assert 112) + (slot int32 :offset-assert 116) + (which int32 :offset-assert 120) + (buffer kheap :offset-assert 124) + (mode basic :offset-assert 128) + (result mc-status-code :offset-assert 132) + (save game-save :offset-assert 136) + (info mc-slot-info :inline :offset-assert 140) + (notify handle :offset-assert 440) + (state-time int64 :offset-assert 448) + (part sparticle-launch-control :offset-assert 456) ) :heap-base #x160 :method-count-assert 23 @@ -1752,6 +1750,202 @@ (the-as auto-save ((method-of-type process relocate) obj arg0)) ) +(defbehavior auto-save-post auto-save () + (when + (and + (= *cheat-mode* 'debug) + (logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons l3)) + ) + (let + ((gp-0 + (new + 'stack + 'font-context + *font-default-matrix* + 32 + 160 + 0.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-5 gp-0)) + (set! (-> v1-5 width) (the float 440)) + ) + (let ((v1-6 gp-0)) + (set! (-> v1-6 height) (the float 80)) + ) + (set! (-> gp-0 flags) (font-flags shadow kerning)) + (format + (clear *temp-string*) + "~S / ~S ~D~%" + (-> self mode) + (-> self state name) + (-> self which) + ) + (print-game-text *temp-string* gp-0 #f 128 22) + ) + ) + (when (and (= (-> self mode) 'auto-save) (!= (-> self next-state name) 'done)) + (let + ((gp-1 + (new + 'stack + 'font-context + *font-default-matrix* + 20 + 40 + 0.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-15 gp-1)) + (set! (-> v1-15 scale) 0.8) + ) + (let ((v1-16 gp-1)) + (set! (-> v1-16 width) (the float 472)) + ) + (let ((v1-17 gp-1)) + (set! (-> v1-17 height) (the float 20)) + ) + (set! (-> gp-1 flags) (font-flags shadow kerning middle left large)) + (when (zero? (-> *game-info* auto-save-count)) + (print-game-text + (lookup-text! *common-text* (game-text-id saving-data) #f) + gp-1 + #f + 128 + 22 + ) + (set! (-> gp-1 origin x) 20.0) + (set! (-> gp-1 origin y) 130.0) + (let ((v1-23 gp-1)) + (set! (-> v1-23 scale) 0.7) + ) + (let ((v1-24 gp-1)) + (set! (-> v1-24 height) (the float 40)) + ) + (let ((s5-2 print-game-text)) + ((the-as (function object string object none) format) + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id do-not-remove-mem-card) #f) + 1 + ) + (s5-2 *temp-string* gp-1 #f 128 22) + ) + ) + ) + (when (< (mod (-> *display* real-frame-counter) 300) 270) + (when (> (-> self part matrix) 0) + (let ((gp-2 (sprite-get-user-hvdf (-> self part matrix)))) + (set! (-> gp-2 vector4w x) (the-as int 1842.0)) + (set! + (-> gp-2 vector4w y) + (the-as + int + (the + float + (+ (the int (* 0.5 (- (* (if (= (get-aspect-ratio) 'aspect16x9) + 370.0 + 360.0 + ) + (-> *video-parms* relative-y-scale) + ) + (the float (-> *video-parms* screen-sy)) + ) + ) + ) + 2048 + ) + ) + ) + ) + (set! + (-> gp-2 vector4w z) + (the-as int (+ -1024.0 (-> *math-camera* hvdf-off z))) + ) + (set! (-> gp-2 vector4w w) (the-as int (-> *math-camera* hvdf-off w))) + ) + ) + (dummy-11 (-> self part) *zero-vector*) + ) + ) + (none) + ) + +(defstatehandler auto-save :post auto-save-post) + +(defbehavior auto-save-init-by-other auto-save ((desired-mode symbol) (notify-proc process-tree) (card-idx int) (file-idx int)) + + ;; stubbing for now. + (return #f) + + (when (handle->process (-> *game-info* auto-save-proc)) + (let ((a1-2 (new 'stack-no-clear 'event-message-block))) + (set! (-> a1-2 from) self) + (set! (-> a1-2 num-params) 2) + (set! (-> a1-2 message) 'notify) + (set! (-> a1-2 param 0) (the-as uint 'error)) + (set! (-> a1-2 param 1) (the-as uint 16)) + (send-event-function (the-as process notify-proc) a1-2) + ) + (return #f) + ) + (set! (-> *game-info* auto-save-proc) (process->handle self)) + (set! (-> *game-info* auto-save-status) (mc-status-code ok)) + (stack-size-set! (-> self main-thread) 512) + (logclear! (-> self mask) (process-mask pause menu progress)) + (set! (-> self card) card-idx) + (set! (-> self which) file-idx) + (set! (-> self buffer) #f) + (set! (-> self mode) desired-mode) + (set! (-> self result) (mc-status-code ok)) + (set! (-> self save) #f) + (set! (-> self notify) (process->handle notify-proc)) + (set! (-> self part) (create-launch-control (-> *part-group-id-table* 656) self)) + (set! (-> self part matrix) (sprite-allocate-user-hvdf)) + (cond + ((= desired-mode 'auto-save) + (if (not (-> *setting-control* current auto-save)) + (go-virtual error (mc-status-code no-auto-save)) + ) + (when (and (zero? (-> self card)) (-> *setting-control* current auto-save)) + (set! (-> self card) (-> *game-info* auto-save-card)) + (set! (-> self which) (-> *game-info* auto-save-which)) + ) + ) + ((= desired-mode 'error) + (set! (-> *setting-control* default auto-save) #f) + (go-virtual error (mc-status-code no-card)) + ) + ) + (set! (-> *setting-control* default auto-save) #f) + (go-virtual get-heap) + (none) + ) + +(defun auto-save-command ((arg0 symbol) (arg1 int) (arg2 int) (arg3 process-tree)) + (make-init-process auto-save auto-save-init-by-other arg0 arg3 arg1 arg2) + (none) + ) + +(defun auto-save-check () + (when (and (-> *setting-control* current auto-save) + (not (handle->process (-> *game-info* auto-save-proc))) + ) + (mc-get-slot-info 0 *auto-save-info*) + (if (and (nonzero? (-> *auto-save-info* known)) + (or (zero? (-> *auto-save-info* handle)) + (!= (-> *auto-save-info* handle) (-> *game-info* auto-save-card)) + ) + ) + (auto-save-command 'error 0 0 (the-as process *default-pool*)) + ) + ) + 0 + (none) + ) -;; TODO - for credits -(define-extern print-game-text (function string font-context symbol int int float)) ; TODO decomp error, this seems correct though diff --git a/goal_src/engine/game/generic-obs-h.gc b/goal_src/engine/game/generic-obs-h.gc index 5b0370b33b..a27070424e 100644 --- a/goal_src/engine/game/generic-obs-h.gc +++ b/goal_src/engine/game/generic-obs-h.gc @@ -13,8 +13,8 @@ (new-joint-anim art-joint-anim :offset-assert 188) (new-joint-anim-blend uint64 :offset-assert 192) (anim-mode symbol :offset-assert 200) - (cur-grab-handle uint64 :offset-assert 208) - (cur-target-handle uint64 :offset-assert 216) + (cur-grab-handle handle :offset-assert 208) + (cur-target-handle handle :offset-assert 216) (old-grab-pos vector :inline :offset-assert 224) (joint joint 4 :offset-assert 240) (new-post-hook function :offset-assert 256) @@ -27,7 +27,6 @@ :method-count-assert 20 :size-assert #x114 :flag-assert #x1400b00114 - ;; inherited inspect of process-drawable ) (deftype part-spawner (process-drawable) @@ -40,7 +39,6 @@ :method-count-assert 21 :size-assert #xd0 :flag-assert #x15006000d0 - ;; inherited inspect of process-drawable (:methods (dummy-20 () none 20) ) @@ -65,9 +63,6 @@ :method-count-assert 14 :size-assert #xf8 :flag-assert #xe009000f8 - ;; inherited inspect of process - (:methods - ) ) (deftype camera-tracker (process) @@ -95,7 +90,6 @@ :method-count-assert 15 :size-assert #xe0 :flag-assert #xf007000e0 - ;; inherited inspect of process ;; field ~Tuserdata is a basic loaded with a signed load (:methods (dummy-14 () none 14) @@ -114,7 +108,6 @@ :method-count-assert 20 :size-assert #xd0 :flag-assert #x14006000d0 - ;; inherited inspect of process-drawable ) (deftype swingpole (process) @@ -127,7 +120,6 @@ :method-count-assert 14 :size-assert #x98 :flag-assert #xe00300098 - ;; inherited inspect of process ) (deftype gui-query (structure) @@ -175,6 +167,6 @@ :size-assert #x70 :flag-assert #xf00000070 (:methods - (dummy-14 () none 14) + (die () _type_ :state 14) ) ) diff --git a/goal_src/engine/game/generic-obs.gc b/goal_src/engine/game/generic-obs.gc index 06ff5cd4fa..7ffa2ab271 100644 --- a/goal_src/engine/game/generic-obs.gc +++ b/goal_src/engine/game/generic-obs.gc @@ -18,9 +18,114 @@ (define-extern process-grab? (function process symbol)) (define-extern camera-change-to (function string int symbol none)) ;; TODO - not confirmed yet (define-extern process-release? (function process symbol)) -;; TODO - for bird-lady-beach -(define-extern manipy-init (function trsqv vector entity skeleton-group none)) ;; TODO - not confirmed yet ;; TODO - for projectiles | dark-eco-pool (define-extern part-tracker-init (function sparticle-launch-group int basic basic basic vector none)) ;; TODO - not confirmed ;; TODO - for target-part (define-extern process-drawable-random-point! (function process-drawable vector vector)) + + +;; TODO PLACEHOLDER STATE +(defstate manipy-idle (manipy) + :code (behavior () + (loop + (suspend) + ) + ) + ) +(defbehavior manipy-init manipy ((arg0 vector) (arg1 entity) (arg2 skeleton-group) (arg3 vector)) + + (stack-size-set! (-> self main-thread) 128) + (logior! (-> self mask) (process-mask heap-shrunk)) + (set! (-> self entity) arg1) + (cond + ((= arg3 'collide-shape-moving) + (let + ((s4-1 + (new + 'process + 'collide-shape-moving + self + (collide-list-enum hit-by-player) + ) + ) + ) + (set! (-> s4-1 dynam) (copy *standard-dynamics* 'process)) + (set! (-> s4-1 reaction) default-collision-reaction) + (set! (-> s4-1 no-reaction) nothing) + (set-vector! + (-> + (new 'process 'collide-shape-prim-sphere s4-1 (the-as uint 0)) + local-sphere + ) + 0.0 + 0.0 + 0.0 + 4096.0 + ) + (dummy-46 s4-1) + (set! (-> s4-1 nav-radius) (* 0.75 (-> s4-1 root-prim local-sphere w))) + (dummy-50 s4-1) + (set! (-> self root) s4-1) + ) + ) + (arg3 + (let + ((s4-2 + (new 'process 'collide-shape self (collide-list-enum hit-by-player)) + ) + ) + (let + ((s2-0 (new 'process 'collide-shape-prim-sphere s4-2 (the-as uint 0)))) + (set! (-> s2-0 prim-core collide-as) (the-as uint #x8040)) + (set! (-> s2-0 collide-with) (the-as uint 16)) + (set-vector! + (-> s2-0 local-sphere) + (-> arg3 x) + (-> arg3 y) + (-> arg3 z) + (-> arg3 w) + ) + ) + (dummy-46 s4-2) + (set! (-> s4-2 nav-radius) (* 0.75 (-> s4-2 root-prim local-sphere w))) + (dummy-50 s4-2) + (set! (-> self root) s4-2) + ) + ) + (else + (set! (-> self root) (new 'process 'trsqv)) + ) + ) + ;;(set! (-> self root trans quad) (-> arg0 quad)) + ;;(dummy-14 self arg2 '()) + ;;(if (type-type? (-> self root type) collide-shape) + ;;(dummy-47 (-> self root)) + ;;) + ;;(set! (-> self shadow-backup) (-> self draw shadow)) + (set! (-> self new-trans-hook) nothing) + (set! (-> self cur-trans-hook) nothing) + (set! (-> self new-post-hook) nothing) + (set! (-> self cur-post-hook) nothing) + (set! (-> self cur-event-hook) #f) + (set! (-> self cur-grab-handle) (the-as handle #f)) + (set! (-> self cur-target-handle) (the-as handle #f)) + (set! (-> self clone-copy-trans) #t) + (set! (-> self draw?) #t) + (cond + ((nonzero? (-> self skel)) + (set! (-> self new-joint-anim) (if (> (-> self skel active-channels) 0) + (-> self skel root-channel 0 frame-group) + ) + ) + (set! (-> self anim-mode) 'loop) + ) + (else + (set! (-> self anim-mode) 'still) + ) + ) + (set! (-> self event-hook) (-> manipy-idle event)) + (go manipy-idle) + (none) + ) + + diff --git a/goal_src/engine/game/main-h.gc b/goal_src/engine/game/main-h.gc index aa8a626524..1813553284 100644 --- a/goal_src/engine/game/main-h.gc +++ b/goal_src/engine/game/main-h.gc @@ -127,7 +127,7 @@ :size-assert #xc :flag-assert #xa0000000c (:methods - (dummy-9 (_type_) none 9) + (draw (_type_) none 9) ) ) diff --git a/goal_src/engine/game/main.gc b/goal_src/engine/game/main.gc index 3d0a42d283..491182e193 100644 --- a/goal_src/engine/game/main.gc +++ b/goal_src/engine/game/main.gc @@ -11,7 +11,7 @@ (defun set-letterbox-frames ((arg0 int)) "Set the letterbox frame counter for arg0 frames in the future" - (let ((v0-0 (+ (-> *display* base-frame-counter) arg0))) + (let ((v0-0 (+ (current-time) arg0))) (set! (-> *game-info* letterbox-time) v0-0) v0-0 ) @@ -33,11 +33,11 @@ Otherwise, this can only be used to increase the blackout period." (cond ((zero? arg0) - (set! (-> *game-info* blackout-time) (-> *display* base-frame-counter)) + (set! (-> *game-info* blackout-time) (current-time)) ) (else (set! (-> *game-info* blackout-time) (max (the int (-> *game-info* blackout-time)) - (the int (+ (-> *display* base-frame-counter) arg0)))) + (the int (+ (current-time) arg0)))) ) ) ) @@ -78,54 +78,37 @@ (if *debug-segment* (menu-respond-to-pause) ) - (case *master-mode* + (case *master-mode* (('pause) ;; request the pause mask to be set in prevent-from-run. ;; this will block any process with pause from running, pausing most game objects. (if (not *debug-pause*) - (set! (-> *setting-control* default process-mask) - (logior (-> *setting-control* default process-mask) (process-mask pause)) - ) + (logior! (-> *setting-control* default process-mask) (process-mask pause)) ) ;; allow the menu to run. - (set! (-> *setting-control* default process-mask) - (logand (lognot (process-mask menu)) - (-> *setting-control* default process-mask) - ) - ) + (logclear! (-> *setting-control* default process-mask) (process-mask menu)) ;; ?? (set! *pause-lock* #f) (sound-group-pause (the-as uint 255)) - ;;(hide-progress-screen) TODO + (hide-progress-screen) ) (('menu) ;; I believe these masks are just to make the progress go away work. - (set! (-> *setting-control* default process-mask) - (logior (-> *setting-control* default process-mask) (process-mask menu)) - ) - (set! (-> *setting-control* default process-mask) - (logand (lognot (process-mask pause progress)) - (-> *setting-control* default process-mask) - ) - ) + (logior! (-> *setting-control* default process-mask) (process-mask menu)) + (logclear! (-> *setting-control* default process-mask) (process-mask pause progress)) (set! *pause-lock* #f) - ;;(hide-progress-screen) TODO + (hide-progress-screen) ) (('progress) ;; allow menu to run while in progress. - (set! (-> *setting-control* default process-mask) - (logand - (lognot (process-mask menu)) - (-> *setting-control* default process-mask) - ) - ) + (logclear! (-> *setting-control* default process-mask) (process-mask menu)) ;; activate the progress menu. (when (not *progress-process*) - (activate-progress *dproc* 0) + (activate-progress *dproc* (progress-screen fuel-cell)) (if (not *progress-process*) ;; if it doesn't want to activate, back to game. (set-master-mode 'game) ) @@ -133,13 +116,9 @@ ) (('game) ;; allow pausable/menu to run. - (set! (-> *setting-control* default process-mask) - (logand (lognot (process-mask pause menu)) - (-> *setting-control* default process-mask) - ) - ) + (logclear! (-> *setting-control* default process-mask) (process-mask pause menu)) ;; (sound-group-continue (the-as uint 255)) TODO (we need to flush sound commands) - ;;(hide-progress-screen) TODO + (hide-progress-screen) ) ) ;; apply settings now. @@ -152,7 +131,7 @@ (defun toggle-pause () "Do pause/menu/progress transitions" - (case *master-mode* + (case *master-mode* (('game) ;; coming from normal gameplay (set! *last-master-mode* *master-mode*) @@ -170,7 +149,7 @@ (else (cond ;; try to open the debug menu: - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r3))) + ((cpad-hold? 0 r3) ;; R3 pushed, no target. (if *debug-segment* 'menu ;; go to debug menu, when in debug mode. @@ -180,8 +159,8 @@ (else (cond ;; debug mode pause allowed with select or R2. - ((and (or (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons select))) - (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r2))) + ((and (or (cpad-hold? 0 select) + (cpad-hold? 0 r2) ) *debug-segment* ) @@ -206,7 +185,7 @@ ) ;; pushing start. - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons start))) + ((cpad-hold? 0 start) ;; toggle between progress/game (if *progress-process* 'game @@ -231,11 +210,11 @@ (set-master-mode (cond ;; push R3 to exit to previous master mode. - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r3))) + ((cpad-hold? 0 r3) *last-master-mode* ) ;; select/R2 to pause. - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons select r2))) + ((cpad-hold? 0 select r2) (if *debug-segment* 'pause *master-mode* ;; not sure we can get to menu in non-debug... @@ -269,7 +248,7 @@ (set-master-mode (cond ;; pause -> debug menu - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r3))) + ((cpad-hold? 0 r3) (if *debug-segment* 'menu *master-mode* @@ -279,12 +258,12 @@ (cond ;; pause -> single frame advance (R2) ((and *cheat-mode* - (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons select r2))) + (cpad-hold? 0 select r2) ) 'game ) ;; pause -> game - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons start))) + ((cpad-hold? 0 start) 'game ) (else @@ -295,14 +274,14 @@ ) ) (set! *pause-lock* - (and *cheat-mode* (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r2)))) + (and *cheat-mode* (cpad-hold? 0 r2)) ) ) (('progress) (set-master-mode (cond ;; progress -> debug - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r3))) + ((cpad-hold? 0 r3) (if *debug-segment* 'menu *master-mode* @@ -310,7 +289,7 @@ ) (else ;; un-progress - (if (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons start))) + (if (cpad-hold? 0 start) *last-master-mode* *master-mode* ) @@ -318,7 +297,7 @@ ) ) (set! *pause-lock* - (and *cheat-mode* (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r2)))) + (and *cheat-mode* (cpad-hold? 0 r2)) ) ) ) @@ -332,6 +311,13 @@ ) ) +(defmethod draw screen-filter ((obj screen-filter)) + (with-dma-buffer-add-bucket ((buf (-> (current-frame) global-buf)) (bucket-id debug-draw1)) + (draw-sprite2d-xy buf -256 (- (-> *video-parms* screen-hy)) 512 (-> *video-parms* screen-sy) (-> obj color)) + ) + (none) + ) + ;;;;;;;;;;;;;;;;;;;;;; ;; Cheat Codes ;;;;;;;;;;;;;;;;;;;;;; @@ -340,495 +326,86 @@ (define *master-exit* #f) (define *progress-cheat* #f) +(defmacro cheats-sound-play (cheat?) + "play the appropriate sound for inputting a cheat code" + + `(if ,cheat? + (sound-play-by-name (static-sound-name "select-menu") (new-sound-id) 1024 0 0 (the-as uint 1) (the-as vector #t)) + (sound-play-by-name (static-sound-name "cursor-options") (new-sound-id) 1024 0 0 (the-as uint 1) (the-as vector #t)) + ) + ) + (defun main-cheats () "Handle cheat codes and timeout" ;; look for codes when L3 is pushed - (when (and (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons l3))) + (when (and (cpad-hold? 0 l3) (or *cheat-mode* (= *kernel-boot-message* 'play)) ;; not in demo ) - (when (nonzero? (-> *cpad-list* cpads 0 button0-rel 0)) - (let ((cheatmode-state (-> *cheat-temp* 0))) - (cond - ((zero? cheatmode-state) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons up))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 1) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons up))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 2) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons down))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 3) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons down))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 4) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons left))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 5) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons right))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 6) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons left))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 7) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons right))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 8) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 9) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 10) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons square))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 11) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 12) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons square))) - (set! (-> *cheat-temp* 0) (+ (-> *cheat-temp* 0) 1)) - ) - (else (set! (-> *cheat-temp* 0) 0)) - ) - ) - ((= cheatmode-state 13) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle))) - ;; got the code! - ;; not sure what this does, but prevents you from having r1 pressed on entry. - (set! (-> *cpad-list* cpads 0 button0-abs 0) - (logand (lognot (pad-buttons r1)) (-> *cpad-list* cpads 0 button0-abs 0)) - ) - (set! (-> *cpad-list* cpads 0 button0-rel 0) - (logand (lognot (pad-buttons r1)) (-> *cpad-list* cpads 0 button0-rel 0)) - ) - ;; toggle! - (set! *cheat-mode* (not *cheat-mode*)) - (if *cheat-mode* - (sound-play-by-name (static-sound-name "select-menu") (new-sound-id) 1024 0 0 (the-as uint 1) (the-as vector #t)) - (sound-play-by-name (static-sound-name "cursor-options") (new-sound-id) 1024 0 0 (the-as uint 1) (the-as vector #t)) - ) - (set! (-> *cheat-temp* 0) 0) - ) - (else - ;; bad code, reset. - (set! (-> *cheat-temp* 0) 0) - ) - ) - ) - ) + ;; cheat mode + (check-cheat-code (-> *cheat-temp* 0) 0 + (up up down down left right left right x x square circle square circle) + (cpad-clear-buttons! 0 r1) + ;; toggle! + (not! *cheat-mode*) + (cheats-sound-play *cheat-mode*) ) - ) - ;; cheat mode, part 2 + ;; debug mode (when *cheat-mode* - (when (nonzero? (-> *cpad-list* cpads 0 button0-rel 0)) - (let ((cheatmode-debug-state (-> *cheat-temp* 1))) - (cond - ((zero? cheatmode-debug-state) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 1) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons square))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 2) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 3) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons square))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 4) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 5) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 6) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons right))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 7) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons left))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 8) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons right))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 9) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons left))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 10) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons down))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 11) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons down))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 12) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons up))) - (set! (-> *cheat-temp* 1) (+ (-> *cheat-temp* 1) 1)) - ) - (else (set! (-> *cheat-temp* 1) 0)) - ) - ) - ((= cheatmode-debug-state 13) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons up))) - ;; got the code! - (set! (-> *cpad-list* cpads 0 button0-abs 0) - (logand (lognot (pad-buttons r1)) (-> *cpad-list* cpads 0 button0-abs 0)) - ) - (set! (-> *cpad-list* cpads 0 button0-rel 0) - (logand (lognot (pad-buttons r1)) (-> *cpad-list* cpads 0 button0-rel 0)) - ) - ;; toggle between #t and debug. - (set! *cheat-mode* - (if (= *cheat-mode* 'debug) - #t - 'debug - ) - ) - (if *cheat-mode* - (sound-play-by-name (static-sound-name "select-menu") (new-sound-id) 1024 0 0 (the-as uint 1) (the-as vector #t)) - (sound-play-by-name (static-sound-name "cursor-options") (new-sound-id) 1024 0 0 (the-as uint 1) (the-as vector #t)) - ) - (set! (-> *cheat-temp* 1) 0) - 0 - ) - (else - (set! (-> *cheat-temp* 1) 0) - 0 - ) - ) - ) - ) + (check-cheat-code (-> *cheat-temp* 1) 0 + (circle square circle square x x right left right left down down up up) + (cpad-clear-buttons! 0 r1) + ;; toggle between #t and debug. + (set! *cheat-mode* (if (= *cheat-mode* 'debug) + #t + 'debug + )) + (cheats-sound-play *cheat-mode*) ) - ) ) ;; language cheat - (case (scf-get-territory) - ((2) - (when (nonzero? (-> *cpad-list* cpads 0 button0-rel 0)) - (let ((cheat-language-state (-> *cheat-temp* 2))) - (cond - ((zero? cheat-language-state) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons l1))) - (set! (-> *cheat-temp* 2) (+ (-> *cheat-temp* 2) 1)) - ) - (else (set! (-> *cheat-temp* 2) 0)) - ) - ) - ((= cheat-language-state 1) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons r1))) - (set! (-> *cheat-temp* 2) (+ (-> *cheat-temp* 2) 1)) - ) - (else (set! (-> *cheat-temp* 2) 0)) - ) - ) - ((= cheat-language-state 2) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons l1))) - (set! (-> *cheat-temp* 2) (+ (-> *cheat-temp* 2) 1)) - ) - (else (set! (-> *cheat-temp* 2) 0)) - ) - ) - ((= cheat-language-state 3) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons r1))) - (set! (-> *cheat-temp* 2) (+ (-> *cheat-temp* 2) 1)) - ) - (else (set! (-> *cheat-temp* 2) 0)) - ) - ) - ((= cheat-language-state 4) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons triangle))) - (set! (-> *cheat-temp* 2) (+ (-> *cheat-temp* 2) 1)) - ) - (else (set! (-> *cheat-temp* 2) 0)) - ) - ) - ((= cheat-language-state 5) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle))) - (set! (-> *cheat-temp* 2) (+ (-> *cheat-temp* 2) 1)) - ) - (else (set! (-> *cheat-temp* 2) 0)) - ) - ) - ((= cheat-language-state 6) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x))) - (set! (-> *cheat-temp* 2) (+ (-> *cheat-temp* 2) 1)) - ) - (else (set! (-> *cheat-temp* 2) 0)) - ) - ) - ((= cheat-language-state 7) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons square))) - ;; got it! - (set! (-> *cpad-list* cpads 0 button0-abs 0) - (logand (lognot (pad-buttons r1)) (-> *cpad-list* cpads 0 button0-abs 0)) - ) - (set! (-> *cpad-list* cpads 0 button0-rel 0) - (logand (lognot (pad-buttons r1)) (-> *cpad-list* cpads 0 button0-rel 0)) - ) - - (set! *progress-cheat* (if *progress-cheat* - #f - 'language - ) - ) - (if *progress-cheat* - (sound-play-by-name (static-sound-name "select-menu") (new-sound-id) 1024 0 0 (the-as uint 1) (the-as vector #t)) - (sound-play-by-name (static-sound-name "cursor-options") (new-sound-id) 1024 0 0 (the-as uint 1) (the-as vector #t)) - ) - (set! (-> *cheat-temp* 2) 0) - ) - (else - ;; invalid code. - (set! (-> *cheat-temp* 2) 0) - ) - ) - ) - ) - ) - ) + (case (scf-get-territory) + ;; japan-only + ((GAME_TERRITORY_SCEI) + (check-cheat-code (-> *cheat-temp* 2) 0 + (l1 r1 l1 r1 triangle circle x square) + (cpad-clear-buttons! 0 r1) + (set! *progress-cheat* (if *progress-cheat* + #f + 'language + )) + (cheats-sound-play *progress-cheat*) + ) ) ) - ;; debug only PAL code + ;; debug only PAL cheat (when *debug-segment* - (when (nonzero? (-> *cpad-list* cpads 0 button0-rel 0)) - (let ((cheat-pal-state (-> *cheat-temp* 3))) - (cond - ((zero? cheat-pal-state) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x))) - (set! (-> *cheat-temp* 3) (+ (-> *cheat-temp* 3) 1)) - ) - (else (set! (-> *cheat-temp* 3) 0)) - ) - ) - ((= cheat-pal-state 1) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons square))) - (set! (-> *cheat-temp* 3) (+ (-> *cheat-temp* 3) 1)) - ) - (else (set! (-> *cheat-temp* 3) 0)) - ) - ) - ((= cheat-pal-state 2) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons triangle))) - (set! (-> *cheat-temp* 3) (+ (-> *cheat-temp* 3) 1)) - ) - (else (set! (-> *cheat-temp* 3) 0)) - ) - ) - ((= cheat-pal-state 3) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle))) - (set! (-> *cheat-temp* 3) (+ (-> *cheat-temp* 3) 1)) - ) - (else (set! (-> *cheat-temp* 3) 0)) - ) - ) - ((= cheat-pal-state 4) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x))) - (set! (-> *cheat-temp* 3) (+ (-> *cheat-temp* 3) 1)) - ) - (else (set! (-> *cheat-temp* 3) 0)) - ) - ) - ((= cheat-pal-state 5) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons square))) - (set! (-> *cheat-temp* 3) (+ (-> *cheat-temp* 3) 1)) - ) - (else (set! (-> *cheat-temp* 3) 0)) - ) - ) - ((= cheat-pal-state 6) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons triangle))) - (set! (-> *cheat-temp* 3) (+ (-> *cheat-temp* 3) 1)) - ) - (else (set! (-> *cheat-temp* 3) 0)) - ) - ) - ((= cheat-pal-state 7) - (cond - ((nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle))) - (set! (-> *cpad-list* cpads 0 button0-abs 0) - (logand (lognot (pad-buttons r1)) (-> *cpad-list* cpads 0 button0-abs 0)) - ) - (set! (-> *cpad-list* cpads 0 button0-rel 0) - (logand (lognot (pad-buttons r1)) (-> *cpad-list* cpads 0 button0-rel 0)) - ) - (set! *progress-cheat* - (if *progress-cheat* - #f - 'pal - ) - ) - (if *progress-cheat* - (sound-play-by-name (static-sound-name "select-menu") (new-sound-id) 1024 0 0 (the-as uint 1) (the-as vector #t)) - (sound-play-by-name (static-sound-name "cursor-options") (new-sound-id) 1024 0 0 (the-as uint 1) (the-as vector #t)) - ) - (set! (-> *cheat-temp* 3) 0) - ) - (else - ;; bad code. - (set! (-> *cheat-temp* 3) 0) - 0 - ) - ) - ) - ) + (check-cheat-code (-> *cheat-temp* 3) 0 + (x square triangle circle x square triangle circle) + (cpad-clear-buttons! 0 r1) + (set! *progress-cheat* (if *progress-cheat* + #f + 'pal + )) + (cheats-sound-play *progress-cheat*) ) - ) ) ) - ;; if cheating, handle the inputs + ;; debug cheats on retail builds (when (and (= *cheat-mode* 'debug) (not *debug-segment*)) ;; target start/stop with l1/r1/l2/r2 - (when (and (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons l1))) - (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons l2))) - (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r1))) - (nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons r2))) + (when (and (cpad-hold? 0 l1) + (cpad-hold? 0 l2) + (cpad-hold? 0 r1) + (cpad-pressed? 0 r2) ) (if *target* (stop 'debug) @@ -838,20 +415,20 @@ ;; reinitialize to title-start with left, up, select - (if (and (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons left))) - (nonzero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons up))) - (nonzero? (logand (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons select))) + (if (and (cpad-hold? 0 left) + (cpad-hold? 0 up) + (cpad-pressed? 0 select) ) (initialize! *game-info* 'game (the-as game-save #f) "title-start") ) ;; push R3 to print global heap status. not very useful. - (if (nonzero? (logand (-> *cpad-list* cpads 1 button0-rel 0) (pad-buttons r3))) + (if (cpad-pressed? 1 r3) (inspect global) ) ;; push R3 to display IOP memory stats - (when (nonzero? (logand (-> *cpad-list* cpads 1 button0-abs 0) (pad-buttons r3))) + (when (cpad-hold? 1 r3) ;; grab a dma buffer (with-dma-buffer-add-bucket ((dma-buff (if *debug-segment* (-> (current-frame) debug-buf) @@ -864,90 +441,69 @@ ;; push triangle to see level info - (if (nonzero? (logand (-> *cpad-list* cpads 1 button0-rel 0) (pad-buttons triangle))) - (set! *display-level-border* (not *display-level-border*)) - ) + (if (cpad-pressed? 1 triangle) + (not! *display-level-border*) + ) ) ;; handle timeouts - (when (!= *kernel-boot-message* 'play) - (let ((timeout (scf-get-timeout)) - (inactive-timeout (scf-get-inactive-timeout)) - ) - (when (and (or - ;; aboslute timout elapsed. - (and (nonzero? timeout) - (>= (the-as int (+ -300000 (the-as int (-> *display* real-frame-counter)))) (the int (* 300.0 (the float timeout)))) - ) - (and (nonzero? inactive-timeout) - (>= (the-as int (- - (-> *display* base-frame-counter) - (-> *cpad-list* cpads 0 change-time) - ) - ) - (the int (* 300.0 (the float inactive-timeout))) - ) - ) - (= *master-exit* 'force) - ) - (progress-allowed?) - (!= *master-exit* #t) - ) - - ;; spawn a process that blacks out the screen, turns things off, and kills the game. - (let ((game-end-proc (get-process *default-dead-pool* process #x4000))) - (if (when game-end-proc - (let ((t9-28 (method-of-type process activate))) - (t9-28 - game-end-proc - *default-pool* - 'process - (the-as pointer #x70004000) - ) - ) - (run-next-time-in-process - game-end-proc - (lambda () - (set-blackout-frames #x7530) - (set! (-> *setting-control* default allow-pause) #f) - (set! (-> *setting-control* default allow-progress) #f) - (copy-settings-from-target! *setting-control*) - (set! (-> *setting-control* default sfx-volume) 0.0) - (set! (-> *setting-control* default music-volume) 0.0) - (set! (-> *setting-control* default dialog-volume) 0.0) - (set! (-> *setting-control* default ambient-volume) 0.0) - (let ((gp-0 (-> *display* base-frame-counter))) - (until (begin - (suspend) - (>= (the-as int (- (-> *display* base-frame-counter) gp-0)) 30) - ) - (empty) + (when (!= *kernel-boot-message* 'play) ;; not regular game mode? + (let ((timeout (scf-get-timeout)) + (inactive-timeout (scf-get-inactive-timeout)) + ) + (when (and (or + ;; aboslute timout elapsed. + (and (nonzero? timeout) + (>= (the-as int (+ -300000 (the-as int (-> *display* real-frame-counter)))) + (the int (* 300.0 (the float timeout))) + ) ) - ) - (kernel-shutdown) - (none) - ) + (and (nonzero? inactive-timeout) + (>= (the-as int (- (current-time) (cpad-change-time 0))) + (the int (* 300.0 (the float inactive-timeout))) + ) + ) + (= *master-exit* 'force) + ) + (progress-allowed?) + (!= *master-exit* #t) ) - (-> game-end-proc ppointer) - ) - ;; failed to create process, just die. - (set! *master-exit* #t) - ) - ) - ) + + ;; spawn a process that blacks out the screen, turns things off, and kills the game. + (if (make-function-process process :stack *scratch-memory-top* + (lambda :behavior process () + (set-blackout-frames (seconds 100)) + (set! (-> *setting-control* default allow-pause) #f) + (set! (-> *setting-control* default allow-progress) #f) + (copy-settings-from-target! *setting-control*) + (set! (-> *setting-control* default sfx-volume) 0.0) + (set! (-> *setting-control* default music-volume) 0.0) + (set! (-> *setting-control* default dialog-volume) 0.0) + (set! (-> *setting-control* default ambient-volume) 0.0) + (let ((gp-0 (current-time))) + (until (>= (the-as int (- (current-time) gp-0)) (seconds 0.1)) + (suspend) + ) + ) + (kernel-shutdown) + (none) + ) + ) + + (set! *master-exit* #t) ;; process created successfully, set to exit + ) + ) + ) ) - ) 0 ) -(defun display-loop () +(defbehavior display-loop process () "This is in progress..." ;; increase our stack size. - (with-pp - (stack-size-set! (-> pp main-thread) 512) - ) + (stack-size-set! (-> self main-thread) 512) (let ((disp *display*)) ;; todo spad terrain context @@ -967,20 +523,22 @@ ;; music pick ;; sound/flava ;; do ambients - + ;; math engine. + + ;; DEBUG PROF + (add-ee-profile-frame 'draw :r #x40 :b #x40) ;; debug hook - ;; main cheats + (main-cheats) ;; update-camera - ;; draw hook (*draw-hook*) (add-ee-profile-frame 'draw :g #x80) - ;; menu hook + (*menu-hook*) (add-ee-profile-frame 'draw :g #x40) - - ;; make-current-level-availabe-to-progress - ;; update-task-hitns + + ;; (make-current-level-available-to-progress) TODO target + ;; update-task-hints (load-level-text-files -1) (add-ee-profile-frame 'unknown-cpu-time) @@ -991,19 +549,7 @@ (*dma-timeout-hook*) (reset-vif1-path) (if *debug-segment* - (format - 0 - "profile bar at ~D.~%" - (-> - *display* - frames - (-> *display* on-screen) - frame - profile-bar - 1 - profile-frame-count - ) - ) + (format 0 "profile bar at ~D.~%" (-> (current-frame) profile-bar 1 profile-frame-count)) ) ) (reset! (-> *perf-stats* data (perf-stat-bucket all-code))) @@ -1013,14 +559,14 @@ ;; run letterbox if needed (when (or (movie?) - (< (the-as int (-> *display* base-frame-counter)) + (< (the-as int (current-time)) (the-as int (-> *game-info* letterbox-time)) ) ) (if (< (the-as int (-> *game-info* letterbox-time)) - (the-as int (-> *display* base-frame-counter)) + (the-as int (current-time)) ) - (set! (-> *game-info* letterbox-time) (-> *display* base-frame-counter)) + (set! (-> *game-info* letterbox-time) (current-time)) ) (if (= (-> *setting-control* current aspect-ratio) 'aspect4x3) (letterbox) @@ -1028,7 +574,7 @@ ) ;; do blackout if needed. - (if (< (the-as int (-> *display* base-frame-counter)) + (if (< (the-as int (current-time)) (the-as int (-> *game-info* blackout-time)) ) (set! (-> *setting-control* default bg-a-force) 1.0) @@ -1053,148 +599,58 @@ (debug-draw-buffers) ;; lines/text ;; debug dma - (let* ((debug-buf (-> disp frames (-> disp on-screen) frame debug-buf)) - (s4-3 (-> debug-buf base)) - ) + (with-dma-buffer-add-bucket ((debug-buf (-> disp frames (-> disp on-screen) frame debug-buf)) + (bucket-id debug-draw1)) (when *display-profile* - (let* ((v1-172 debug-buf) - (a0-77 (the-as object (-> v1-172 base))) - ) - (set! (-> (the-as dma-packet a0-77) dma) (new 'static 'dma-tag :qwc #xa :id (dma-tag-id cnt))) - (set! (-> (the-as dma-packet a0-77) vif0) (new 'static 'vif-tag)) - (set! (-> (the-as dma-packet a0-77) vif1) (new 'static 'vif-tag :imm #xa :cmd (vif-cmd direct) :msk #x1)) - (set! (-> v1-172 base) (&+ (the-as pointer a0-77) 16)) - ) - (let* ((v1-173 debug-buf) - (a0-79 (the-as object (-> v1-173 base))) - ) - (set! (-> (the-as gs-gif-tag a0-79) tag) (new 'static 'gif-tag64 :nloop #x1 :eop #x1 :nreg #x9)) - (set! (-> (the-as gs-gif-tag a0-79) regs) - (new 'static 'gif-tag-regs - :regs0 (gif-reg-id a+d) - :regs1 (gif-reg-id a+d) - :regs2 (gif-reg-id a+d) - :regs3 (gif-reg-id a+d) - :regs4 (gif-reg-id a+d) - :regs5 (gif-reg-id a+d) - :regs6 (gif-reg-id a+d) - :regs7 (gif-reg-id a+d) - :regs8 (gif-reg-id a+d) - :regs9 (gif-reg-id a+d) - :regs10 (gif-reg-id a+d) - :regs11 (gif-reg-id a+d) - :regs12 (gif-reg-id a+d) - :regs13 (gif-reg-id a+d) - :regs14 (gif-reg-id a+d) - :regs15 (gif-reg-id a+d) + (dma-buffer-add-gs-set debug-buf + (alpha-1 (new 'static 'gs-alpha :b 1 :d 1)) + (zbuf-1 (new 'static 'gs-zbuf :zbp #x1c0 :psm (gs-psm ct24) :zmsk 1)) + (test-1 (new 'static 'gs-test :zte 1 :ztst (gs-ztest always))) + (pabe 0) + (clamp-1 (new 'static 'gs-clamp :wms (gs-tex-wrap-mode clamp) :wmt (gs-tex-wrap-mode clamp))) + (tex1-1 (new 'static 'gs-tex1 :mmag 1 :mmin 1)) + (texa (new 'static 'gs-texa :ta1 #x80)) + (texclut (new 'static 'gs-texclut :cbw 4)) + (fogcol *fog-color*) ) - ) - (set! (-> v1-173 base) (&+ (the-as pointer a0-79) 16)) - ) - (let* ((v1-174 debug-buf) - (a0-81 (-> v1-174 base)) - ) - (set! (-> (the-as (pointer gs-alpha) a0-81) 0) (new 'static 'gs-alpha :b #x1 :d #x1)) - (set! (-> (the-as (pointer gs-reg64) a0-81) 1) (gs-reg64 alpha-1)) - (set! (-> (the-as (pointer gs-zbuf) a0-81) 2) (new 'static 'gs-zbuf :zbp #x1c0 :psm (gs-psm ct24) :zmsk #x1)) - (set! (-> (the-as (pointer gs-reg64) a0-81) 3) (gs-reg64 zbuf-1)) - (set! (-> (the-as (pointer gs-test) a0-81) 4) (new 'static 'gs-test :zte #x1 :ztst (gs-ztest always))) - (set! (-> (the-as (pointer gs-reg64) a0-81) 5) (gs-reg64 test-1)) - (set! (-> (the-as (pointer uint64) a0-81) 6) (the-as uint 0)) - (set! (-> (the-as (pointer gs-reg64) a0-81) 7) (gs-reg64 pabe)) - (set! (-> (the-as (pointer gs-clamp) a0-81) 8) - (new 'static 'gs-clamp - :wms (gs-tex-wrap-mode clamp) - :wmt (gs-tex-wrap-mode clamp) - ) - ) - (set! (-> (the-as (pointer gs-reg64) a0-81) 9) (gs-reg64 clamp-1)) - (set! (-> (the-as (pointer gs-tex1) a0-81) 10) - (new 'static 'gs-tex1 :mmag #x1 :mmin #x1) - ) - (set! (-> (the-as (pointer gs-reg64) a0-81) 11) (gs-reg64 tex1-1)) - (set! (-> (the-as (pointer gs-texa) a0-81) 12) - (new 'static 'gs-texa :ta1 #x80) - ) - (set! (-> (the-as (pointer gs-reg64) a0-81) 13) (gs-reg64 texa)) - (set! (-> (the-as (pointer gs-texclut) a0-81) 14) - (new 'static 'gs-texclut :cbw #x4) - ) - (set! (-> (the-as (pointer gs-reg64) a0-81) 15) (gs-reg64 texclut)) - (set! (-> (the-as (pointer gs-fogcol) a0-81) 16) - (the-as gs-fogcol *fog-color*) - ) - (set! (-> (the-as (pointer gs-reg64) a0-81) 17) (gs-reg64 fogcol)) - (set! (-> v1-174 base) (&+ a0-81 144)) - ) ;; draw the profile bars (dotimes (s2-0 2) (let ((s1-0 (-> disp frames (-> disp on-screen) frame profile-bar s2-0))) - (add-end-frame - s1-0 - 'end-draw - (new 'static 'rgba :r #x40 :g #x40 :b #x40 :a #x40) - ) + (add-end-frame s1-0 'end-draw (static-rgba #x40 #x40 #x40 #x40)) (draw s1-0 debug-buf (* 10 s2-0)) ) 0 ) ) ;; end profiler draw - + (when *display-deci-count* - (let ((s2-1 draw-string-xy)) - (format (clear *temp-string*) "~D" *deci-count*) - (s2-1 *temp-string* debug-buf 448 210 (font-color default) (font-flags shadow kerning)) - ) + (draw-string-xy (string-format "~D" *deci-count*) debug-buf 448 210 (font-color default) (font-flags shadow kerning)) ) + ;; added + (format *stdcon* "~3Lglobal heap at ~,,2fK remaining~0L~%" + (* (1/ 1024) (&- (-> global top) (-> global current)))) + (display-file-info) - - ;; add it all to debug-draw1 - (let ((a3-6 (-> debug-buf base))) - (let ((v1-188 (the-as object (-> debug-buf base)))) - (set! (-> (the-as dma-packet v1-188) dma) - (new 'static 'dma-tag :id (dma-tag-id next)) - ) - (set! (-> (the-as dma-packet v1-188) vif0) (new 'static 'vif-tag)) - (set! (-> (the-as dma-packet v1-188) vif1) (new 'static 'vif-tag)) - (set! (-> debug-buf base) (&+ (the-as pointer v1-188) 16)) - ) - (dma-bucket-insert-tag - (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) - s4-3 - (the-as (pointer dma-tag) a3-6) - ) - ) ) ;; end dma let ) ;; end debug-segment ;; draw pause text. - (let* ((s3-1 (if *debug-segment* - (-> disp frames (-> disp on-screen) frame debug-buf) - (-> disp frames (-> disp on-screen) frame global-buf) - ) - ) - (s4-4 (-> s3-1 base)) - ) + (with-dma-buffer-add-bucket ((s3-1 (if *debug-segment* + (-> disp frames (-> disp on-screen) frame debug-buf) + (-> disp frames (-> disp on-screen) frame global-buf) + )) + (bucket-id debug-draw0)) (if (= *master-mode* 'pause) - (draw-string-xy - (lookup-text! *common-text* (game-text-id pause) #f) + (draw-string-xy (lookup-text! *common-text* (game-text-id pause) #f) s3-1 256 160 (font-color orange-red) (font-flags shadow kerning middle large)) ) ;; draw console text on screen (let ((a3-8 (the int (draw-string *stdcon0* s3-1 *font-context*)))) - (draw-string-xy *stdcon1* - s3-1 - (the int (-> *font-context* origin x)) - a3-8 - (font-color default) - (font-flags shadow kerning) - ) + (draw-string-xy *stdcon1* s3-1 (the int (-> *font-context* origin x)) a3-8 (font-color default) (font-flags shadow kerning)) ) ;; draw misc info @@ -1204,24 +660,6 @@ (if *display-memcard-info* (show-mc-info s3-1) ) - - ;; draw to debug0 - (let ((a3-9 (-> s3-1 base))) - (let ((v1-215 (the-as object (-> s3-1 base)))) - (set! (-> (the-as dma-packet v1-215) dma) - (new 'static 'dma-tag :id (dma-tag-id next)) - ) - (set! (-> (the-as dma-packet v1-215) vif0) (new 'static 'vif-tag)) - (set! (-> (the-as dma-packet v1-215) vif1) (new 'static 'vif-tag)) - (set! (-> s3-1 base) (&+ (the-as pointer v1-215) 16)) - ) - (dma-bucket-insert-tag - (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) - s4-4 - (the-as (pointer dma-tag) a3-9) - ) - ) ) (let ((v1-220 *dma-mem-usage*)) (when (nonzero? v1-220) @@ -1242,7 +680,7 @@ ) ) ) - + ;; console buffers (set! *stdcon* (clear *stdcon0*)) @@ -1258,7 +696,7 @@ ;; run mc ;; auto save check ;; suspend - + (suspend) ) ) @@ -1277,7 +715,8 @@ ) ) (set! *run* #t) - (let ((new-dproc (make-function-process *4k-dead-pool* *display-pool* process display-loop :name 'display))) + (let ((new-dproc (make-function-process process display-loop :name 'display + :from *4k-dead-pool* :to *display-pool*))) (set! *dproc* (the process (ppointer->process new-dproc))) ) (cond @@ -1319,6 +758,3 @@ (set! *run* #f) 0 ) - -;; TODO - for credits -(define-extern scf-get-territory (function int)) diff --git a/goal_src/engine/game/projectiles.gc b/goal_src/engine/game/projectiles.gc index 8546e7f35f..5d93fd1cc3 100644 --- a/goal_src/engine/game/projectiles.gc +++ b/goal_src/engine/game/projectiles.gc @@ -566,7 +566,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-root-prim + :sym 'sparticle-track-root-prim ) (new 'static 'sp-field-init-spec :field #x43) ) diff --git a/goal_src/engine/game/settings-h.gc b/goal_src/engine/game/settings-h.gc index b882b40d67..deba875ef9 100644 --- a/goal_src/engine/game/settings-h.gc +++ b/goal_src/engine/game/settings-h.gc @@ -29,7 +29,7 @@ (dialog-volume float :offset-assert 12) (process-mask process-mask :offset-assert 16) (common-page int32 :offset-assert 20) - (language int64 :offset-assert 24) + (language language-enum :offset-assert 24) (screenx int32 :offset-assert 32) (screeny int32 :offset-assert 36) (vibration symbol :offset-assert 40) diff --git a/goal_src/engine/game/settings.gc b/goal_src/engine/game/settings.gc index 4f1205d1cf..4e2f60cbb1 100644 --- a/goal_src/engine/game/settings.gc +++ b/goal_src/engine/game/settings.gc @@ -154,7 +154,7 @@ (set! (-> obj bg-a-force) (the-as float (-> conn param2))) ) (('language) - (set! (-> obj language) (the-as int (-> conn param3))) + (set! (-> obj language) (the-as language-enum (-> conn param3))) ) (('vibration) (set! (-> obj vibration) (the-as symbol (-> conn param1))) @@ -408,7 +408,7 @@ (set! (-> gp-0 ambient-volume-movie) (the float (* 5 (the int (+ 0.5 (* 11.0 f0-2)))))) (set! (-> gp-0 dialog-volume-hint) (the float (* 5 (the int (+ 0.5 (* 16.0 f0-2)))))) ) - (set! (-> gp-0 language) (the-as int (scf-get-language))) + (set! (-> gp-0 language) (scf-get-language)) (set! (-> gp-0 process-mask) (process-mask execute sleep)) (set! (-> gp-0 screenx) 0) (set! (-> gp-0 screeny) 0) diff --git a/goal_src/engine/game/video.gc b/goal_src/engine/game/video.gc index 8279cf9be4..6f8f7b80c4 100644 --- a/goal_src/engine/game/video.gc +++ b/goal_src/engine/game/video.gc @@ -62,7 +62,7 @@ (set-hud-aspect-ratio (get-aspect-ratio) arg0) ) (if *progress-process* - (TODO-RENAME-23 (-> *progress-process* 0) (get-aspect-ratio) arg0) + (adjust-ratios (-> *progress-process* 0) (get-aspect-ratio) arg0) ) (let ((v0-3 0)) ) @@ -97,7 +97,7 @@ (set-hud-aspect-ratio arg0 (get-video-mode)) ) (if *progress-process* - (TODO-RENAME-23 (-> *progress-process* 0) arg0 (get-video-mode)) + (adjust-ratios (-> *progress-process* 0) arg0 (get-video-mode)) ) (let ((v0-2 0)) ) diff --git a/goal_src/engine/gfx/hw/display.gc b/goal_src/engine/gfx/hw/display.gc index cffea6a7fe..128e9b544c 100644 --- a/goal_src/engine/gfx/hw/display.gc +++ b/goal_src/engine/gfx/hw/display.gc @@ -230,12 +230,12 @@ (set-draw-env (-> disp draw1) psm w h ztest zpsm 320) ;; initialize a bunch of counters - (set! (-> disp base-frame-counter) #x493e0) - (set! (-> disp game-frame-counter) #x493e0) - (set! (-> disp real-frame-counter) #x493e0) - (set! (-> disp part-frame-counter) #x493e0) - (set! (-> disp integral-frame-counter) #x493e0) - (set! (-> disp real-integral-frame-counter) #x493e0) + (set! (-> disp base-frame-counter) (seconds 1000)) + (set! (-> disp game-frame-counter) (seconds 1000)) + (set! (-> disp real-frame-counter) (seconds 1000)) + (set! (-> disp part-frame-counter) (seconds 1000)) + (set! (-> disp integral-frame-counter) (seconds 1000)) + (set! (-> disp real-integral-frame-counter) (seconds 1000)) ;; and the "old" version, which I think was their value on the last... frame? (set! (-> disp old-base-frame-counter) (+ (-> disp base-frame-counter) -1)) diff --git a/goal_src/engine/gfx/sprite/sprite-h.gc b/goal_src/engine/gfx/sprite/sprite-h.gc index 848b6946df..541d0f05f6 100644 --- a/goal_src/engine/gfx/sprite/sprite-h.gc +++ b/goal_src/engine/gfx/sprite/sprite-h.gc @@ -36,8 +36,8 @@ (deftype sprite-array-2d (basic) ((num-sprites int32 2 :offset-assert 4) (num-valid int32 2 :offset-assert 12) - (vec-data uint32 :offset-assert 20) - (adgif-data uint32 :offset-assert 24) + (vec-data pointer :offset-assert 20) + (adgif-data (inline-array adgif-shader) :offset-assert 24) (pad uint128 4 :offset-assert 32) (data uint128 1 :offset-assert 96) ) @@ -78,8 +78,8 @@ (deftype sprite-array-3d (basic) ((num-sprites int32 2 :offset-assert 4) (num-valid int32 2 :offset-assert 12) - (vec-data uint32 :offset-assert 20) - (adgif-data uint32 :offset-assert 24) + (vec-data pointer :offset-assert 20) + (adgif-data (inline-array adgif-shader) :offset-assert 24) (data uint128 1 :offset-assert 32) ) (:methods diff --git a/goal_src/engine/gfx/sprite/sprite.gc b/goal_src/engine/gfx/sprite/sprite.gc index aadc865e18..7e406d4666 100644 --- a/goal_src/engine/gfx/sprite/sprite.gc +++ b/goal_src/engine/gfx/sprite/sprite.gc @@ -398,15 +398,15 @@ (set! (-> v0-0 num-valid 1) 0) ;; internally, we put the vec-data and then the adgif-data - (set! (-> v0-0 vec-data) (the-as uint (-> v0-0 data))) - (set! (-> v0-0 adgif-data) (the-as uint (&-> v0-0 data vec-data-size))) + (set! (-> v0-0 vec-data) (-> v0-0 data)) + (set! (-> v0-0 adgif-data) (the-as (inline-array adgif-shader) (&-> v0-0 data vec-data-size))) v0-0 ) ) (defmethod new sprite-array-3d ((allocation symbol) (type-to-make type) (group-0-size int) (group-1-size int)) "Allocate a sprite-array for 3d sprites. There are two groups, each can contain the given number of sprites. - Group 1 size is zero in practive for 3d." + Group 1 size is zero in practice for 3d." (let* ((sprite-count (+ group-0-size group-1-size)) (vec-data-size (* 3 sprite-count)) (adgif-data-size (* 5 sprite-count)) @@ -419,8 +419,8 @@ (set! (-> v0-0 num-sprites 1) group-1-size) (set! (-> v0-0 num-valid 0) 0) (set! (-> v0-0 num-valid 1) 0) - (set! (-> v0-0 vec-data) (the-as uint (-> v0-0 data))) - (set! (-> v0-0 adgif-data) (the-as uint (&-> v0-0 data vec-data-size))) + (set! (-> v0-0 vec-data) (-> v0-0 data)) + (set! (-> v0-0 adgif-data) (the-as (inline-array adgif-shader) (&-> v0-0 data vec-data-size))) v0-0 ) ) @@ -606,7 +606,7 @@ ;; second packet is vector data (3 qw / sprite) (let ((qwc-pkt2 (* 3 num-sprites))) ;; we do a ref to the vec-data and don't actually copy it into the dma-buffer - (dma-buffer-add-ref-vif2 dma-buff qwc-pkt2 (+ (-> sprites vec-data) (the-as uint (* 48 start-sprite-idx))) + (dma-buffer-add-ref-vif2 dma-buff qwc-pkt2 (&+ (-> sprites vec-data) (* 48 start-sprite-idx)) (new 'static 'vif-tag :cmd (vif-cmd nop)) (new 'static 'vif-tag :cmd (vif-cmd unpack-v4-32) :num qwc-pkt2 :imm (new 'static 'vif-unpack-imm :flg 1 :addr 1)) @@ -615,7 +615,7 @@ ;; third packet is adgif data (5 qw/sprite) (let ((qwc-pkt3 (* 5 num-sprites))) - (dma-buffer-add-ref-vif2 dma-buff qwc-pkt3 (+ (-> sprites adgif-data) (the-as uint (* 80 start-sprite-idx))) + (dma-buffer-add-ref-vif2 dma-buff qwc-pkt3 (&+ (-> sprites adgif-data) (* 80 start-sprite-idx)) (new 'static 'vif-tag :cmd (vif-cmd nop)) (new 'static 'vif-tag :cmd (vif-cmd unpack-v4-32) :num qwc-pkt3 :imm (new 'static 'vif-unpack-imm :flg 1 :addr 145)) @@ -676,7 +676,7 @@ ;; second packet is vector data (3 qw / sprite) (let ((qwc-pkt2 (* 3 num-sprites))) ;; we do a ref to the vec-data and don't actually copy it into the dma-buffer - (dma-buffer-add-ref-vif2 dma-buff qwc-pkt2 (+ (-> sprites vec-data) (the-as uint (* 48 start-sprite-idx))) + (dma-buffer-add-ref-vif2 dma-buff qwc-pkt2 (&+ (-> sprites vec-data) (* 48 start-sprite-idx)) (new 'static 'vif-tag :cmd (vif-cmd nop)) (new 'static 'vif-tag :cmd (vif-cmd unpack-v4-32) :num qwc-pkt2 :imm (new 'static 'vif-unpack-imm :flg 1 :addr 1)) @@ -685,7 +685,7 @@ ;; third packet is adgif data (5 qw/sprite) (let ((qwc-pkt3 (* 5 num-sprites))) - (dma-buffer-add-ref-vif2 dma-buff qwc-pkt3 (+ (-> sprites adgif-data) (the-as uint (* 80 start-sprite-idx))) + (dma-buffer-add-ref-vif2 dma-buff qwc-pkt3 (&+ (-> sprites adgif-data) (* 80 start-sprite-idx)) (new 'static 'vif-tag :cmd (vif-cmd nop)) (new 'static 'vif-tag :cmd (vif-cmd unpack-v4-32) :num qwc-pkt3 :imm (new 'static 'vif-unpack-imm :flg 1 :addr 145)) diff --git a/goal_src/engine/math/math.gc b/goal_src/engine/math/math.gc index cf674ffbdd..34b8584c10 100644 --- a/goal_src/engine/math/math.gc +++ b/goal_src/engine/math/math.gc @@ -153,6 +153,11 @@ `(set! ,place (seek ,place ,target ,rate)) ) +(defmacro seekl! (place target rate) + "Macro to use seekl in-place. place is the base, and where the result is stored." + `(set! ,place (seekl ,place ,target ,rate)) + ) + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;; integer utility ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; diff --git a/goal_src/engine/ps2/memcard-h.gc b/goal_src/engine/ps2/memcard-h.gc index af47a5ffda..c6a78efd75 100644 --- a/goal_src/engine/ps2/memcard-h.gc +++ b/goal_src/engine/ps2/memcard-h.gc @@ -52,15 +52,15 @@ "Block here, waiting for the memory card to finish being read/written. Note - this will freeze the entire game, so this should not be used outside of debugging." - (local-vars (v0-0 int)) - (set! v0-0 0) - (while (zero? v0-0) - ;; run the memory card state machine (in C Kenrel) + (let ((v0-0 0)) + (while (zero? v0-0) + ;; run the memory card state machine (in C Kernel) (mc-run) ;; see if we got a good response (set! v0-0 (mc-check-result)) ) - v0-0 + v0-0 + ) ) (defun show-mc-info ((dma-buf dma-buffer)) diff --git a/goal_src/engine/ps2/pad.gc b/goal_src/engine/ps2/pad.gc index 53f4dd82ce..7cd9855a0d 100644 --- a/goal_src/engine/ps2/pad.gc +++ b/goal_src/engine/ps2/pad.gc @@ -349,6 +349,14 @@ ) +(defmacro cpad-pressed (pad-idx) + `(-> *cpad-list* cpads ,pad-idx button0-rel 0) + ) + +(defmacro cpad-hold (pad-idx) + `(-> *cpad-list* cpads ,pad-idx button0-abs 0) + ) + (defmacro cpad-pressed? (pad-idx &rest buttons) `(logtest? (-> *cpad-list* cpads ,pad-idx button0-rel 0) (pad-buttons ,@buttons)) ) @@ -357,3 +365,38 @@ `(logtest? (-> *cpad-list* cpads ,pad-idx button0-abs 0) (pad-buttons ,@buttons)) ) +(defmacro cpad-clear-buttons! (pad-idx &rest buttons) + `(begin + (logclear! (-> *cpad-list* cpads ,pad-idx button0-abs 0) (pad-buttons ,@buttons)) + (logclear! (-> *cpad-list* cpads ,pad-idx button0-rel 0) (pad-buttons ,@buttons)) + ) + ) + +(defmacro cpad-change-time (pad-idx) + `(-> *cpad-list* cpads ,pad-idx change-time) + ) + +(defmacro check-cheat-code (cheat-var pad-idx buttons &rest body) + "execute body when a cheat code made up of sequential inputs has been inputted" + + `(when (nonzero? (cpad-pressed ,pad-idx)) ;; only check when some button has been pressed + (case ,cheat-var + ,@(apply-i + (lambda (x i) + `((,i) + (if (cpad-pressed? ,pad-idx ,x) + ,(if (< i (- (length buttons) 1)) + `(1+! ,cheat-var) + + `(begin ,@body (set! ,cheat-var 0)) + ) + + (set! ,cheat-var 0) + ) + ) + ) + buttons) + ) + ) + ) + diff --git a/goal_src/engine/sound/gsound.gc b/goal_src/engine/sound/gsound.gc index e0663e4a32..39aed02ff3 100644 --- a/goal_src/engine/sound/gsound.gc +++ b/goal_src/engine/sound/gsound.gc @@ -5,6 +5,9 @@ ;; name in dgo: gsound ;; dgos: GAME, ENGINE +;; use this constant to enable/disable the sound functions. debug purposes. +(defglobalconstant PC_DEBUG_SOUND_ENABLE #f) + ;; The sound playback stuff is all on the IOP so we use IOP RPCs to control it. ;; Ther is a "player" that plays sound effects, and a "loader" that takes care of loading banks. (define *sound-player-rpc* (new 'global 'rpc-buffer-pair (the uint (size-of sound-rpc-union)) (the-as uint 128) RPC-SOUND-PLAYER)) @@ -163,7 +166,7 @@ 0 ) -(defun set-language ((lang int)) +(defun set-language ((lang language-enum)) (kset-language lang) (let ((cmd (the sound-rpc-set-language (add-element *sound-loader-rpc*)))) (set! (-> cmd command) (sound-command set-language)) @@ -228,17 +231,17 @@ (cond ((not (is-cd-in?)) (if (or (not *progress-process*) - (!= (-> *progress-process* 0 display-state) 32)) + (!= (-> *progress-process* 0 display-state) (progress-screen no-disc))) - (activate-progress *dproc* 32) + (activate-progress *dproc* (progress-screen no-disc)) ) ) ((not (is-cd-good?)) (if (or (not *progress-process*) - (!= (-> *progress-process* 0 display-state) 33)) + (!= (-> *progress-process* 0 display-state) (progress-screen bad-disc))) - (activate-progress *dproc* 33) + (activate-progress *dproc* (progress-screen bad-disc)) ) ) ) @@ -301,15 +304,18 @@ (defun sound-set-volume ((group uint) (volume float)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-set-master-volume (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command set-master-volume)) (set! (-> cmd group) group) (set! (-> cmd volume) (the int (* 10.24 volume))) ) + ) 0 ) (defun sound-set-reverb ((arg0 int) (arg1 float) (arg2 float) (arg3 uint)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the-as sound-rpc-set-reverb (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command set-reverb)) (set! (-> cmd core) arg3) @@ -317,37 +323,42 @@ (set! (-> cmd left) (the-as uint (the int (* 32767.0 arg1)))) (set! (-> cmd right) (the-as uint (the int (* 32767.0 arg2)))) ) + ) 0 ) (defun sound-set-ear-trans ((ear-trans vector) (cam-trans vector) (cam-angle float)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-set-ear-trans (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command set-ear-trans)) (sound-trans-convert (-> cmd ear-trans) ear-trans) (sound-trans-convert (-> cmd cam-trans) cam-trans) (set! (-> cmd cam-angle) (sound-angle-convert cam-angle)) ) + ) 0 ) (defmacro sound-trans-from-process (cmd sound-trans) "Macro for getting an appropriate sound-trans from a process-drawable, if possible" - `(begin - (with-pp - (let ((proc (the process-drawable pp))) - (when (= ,sound-trans #t) - (if (and proc - (type-type? (-> proc type) process-drawable) - (nonzero? (-> proc root))) - (set! ,sound-trans (-> proc root trans)) - (set! ,sound-trans (the vector #f)) - ) + `(with-pp + (let ((proc (the process-drawable pp))) + (format 0 "get proc~%") + (when (= ,sound-trans #t) + (format 0 "trans #t~%") + (if (and proc + (type-type? (-> proc type) process-drawable) + (nonzero? (-> proc root))) + (set! ,sound-trans (-> proc root trans)) + (set! ,sound-trans (the vector #f)) ) + (format 0 "trans is ~A~%" ,sound-trans) ) ) + (format 0 "convert~%" ,sound-trans) (sound-trans-convert (-> ,cmd parms trans) ,sound-trans) ) ) @@ -355,6 +366,7 @@ (defun sound-play-by-name ((name sound-name) (id sound-id) (vol int) (pitch int) (bend int) (group uint) (trans vector)) "Play a sound called name with the specified params" + (#when PC_DEBUG_SOUND_ENABLE (let ((sound-trans trans)) (when *sound-player-enable* (let ((cmd (the sound-rpc-play (get-sound-buffer-entry)))) @@ -368,16 +380,19 @@ (set! (-> cmd parms pitch-mod) pitch) (set! (-> cmd parms bend) bend) + (format 0 "stfp~%") (sound-trans-from-process cmd sound-trans) ) ) ) + ) id ) (defun sound-play-by-spec ((spec sound-spec) (id sound-id) (sound-trans vector)) "Play a sound from the given spec" + (#when PC_DEBUG_SOUND_ENABLE (when *sound-player-enable* (let ((cmd (the sound-rpc-play (get-sound-buffer-entry)))) @@ -397,76 +412,92 @@ (sound-trans-from-process cmd sound-trans) ) ) + ) id ) (defun sound-pause ((id sound-id)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-pause-sound (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command pause-sound)) (set! (-> cmd id) id) ) + ) 0 ) (defun sound-stop ((id sound-id)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-stop-sound (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command stop-sound)) (set! (-> cmd id) id) ) + ) 0 ) (defun sound-continue ((id sound-id)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-continue-sound (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command continue-sound)) (set! (-> cmd id) id) ) + ) 0 ) (defun sound-group-pause ((group uint)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-pause-group (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command pause-group)) (set! (-> cmd group) group) ) + ) 0 ) (defun sound-group-stop ((group uint)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-stop-group (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command stop-group)) (set! (-> cmd group) group) ) + ) 0 ) (defun sound-group-continue ((group uint)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-continue-group (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command continue-group)) (set! (-> cmd group) group) ) + ) 0 ) (defun sound-set-falloff-curve ((curve int) (falloff float) (ease float)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-set-falloff-curve (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command set-falloff-curve)) (set! (-> cmd curve) curve) (set! (-> cmd falloff) (the int (* 4096.0 falloff))) (set! (-> cmd ease) (the int (* 4096.0 ease))) ) + ) 0 ) (defun sound-set-sound-falloff ((name sound-name) (falloff-min int) (falloff-max int) (curve int)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-set-sound-falloff (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command set-sound-falloff)) (set! (-> cmd name) name) @@ -474,15 +505,18 @@ (set! (-> cmd max) falloff-max) (set! (-> cmd curve) curve) ) + ) 0 ) (defun sound-set-flava ((flava uint)) + (#when PC_DEBUG_SOUND_ENABLE (let ((cmd (the sound-rpc-set-flava (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command set-flava)) (set! (-> cmd flava) flava) ) + ) 0 ) @@ -858,7 +892,7 @@ 2 : flutflut 3 : to-maincave 4 : to-snow -5 : sage-green +5 : sage 6 : assistant 7 : birdlady 8 : mayor diff --git a/goal_src/engine/sparticle/sparticle-h.gc b/goal_src/engine/sparticle/sparticle-h.gc index 916ad8ad0c..1855b064ec 100644 --- a/goal_src/engine/sparticle/sparticle-h.gc +++ b/goal_src/engine/sparticle/sparticle-h.gc @@ -18,37 +18,37 @@ (define *sp-60-hz* #t) (deftype sparticle-cpuinfo (structure) - ((sprite sprite-vec-data-2d :offset-assert 0) - (adgif adgif-shader :offset-assert 4) - (radius float :offset-assert 8) - (omega float :offset-assert 12) - (vel-sxvel vector :inline :offset-assert 16) - (rot-syvel vector :inline :offset-assert 32) - (fade rgbaf :inline :offset-assert 48) - (acc vector :inline :offset-assert 64) - (rotvel3d quaternion :inline :offset-assert 80) - (vel vector3s :inline :offset 16) - (accel vector3s :inline :offset 64) - (scalevelx float :offset 28) - (scalevely float :offset 44) - (friction float :offset-assert 96) - (timer int32 :offset-assert 100) - (flags uint32 :offset-assert 104) - (user-int32 int32 :offset-assert 108) - (user-uint32 uint32 :offset 108) - (user-float float :offset 108) - (user-pntr uint32 :offset 108) - (user-sprite sprite-vec-data-2d :offset 108) - (func basic :offset-assert 112) - (next-time uint32 :offset-assert 116) - (next-launcher basic :offset-assert 120) - (cache-alpha float :offset-assert 124) - (valid basic :offset-assert 128) - (key basic :offset-assert 132) - (binding sparticle-launch-state :offset-assert 136) - (data uint32 1 :offset 12) - (dataf float 1 :offset 12) - (datac uint8 1 :offset 12) + ((sprite sprite-vec-data-2d :offset-assert 0) + (adgif adgif-shader :offset-assert 4) + (radius float :offset-assert 8) + (omega float :offset-assert 12) + (vel-sxvel vector :inline :offset-assert 16) + (rot-syvel vector :inline :offset-assert 32) + (fade rgbaf :inline :offset-assert 48) + (acc vector :inline :offset-assert 64) + (rotvel3d quaternion :inline :offset-assert 80) + (vel vector3s :inline :offset 16) + (accel vector3s :inline :offset 64) + (scalevelx float :offset 28) + (scalevely float :offset 44) + (friction float :offset-assert 96) + (timer int32 :offset-assert 100) + (flags uint32 :offset-assert 104) + (user-int32 int32 :offset-assert 108) + (user-uint32 uint32 :offset 108) + (user-float float :score 100 :offset 108) + (user-pntr uint32 :offset 108) + (user-sprite sprite-vec-data-2d :offset 108) + (func basic :offset-assert 112) + (next-time uint32 :offset-assert 116) + (next-launcher basic :offset-assert 120) + (cache-alpha float :offset-assert 124) + (valid basic :offset-assert 128) + (key sparticle-launch-control :offset-assert 132) + (binding sparticle-launch-state :offset-assert 136) + (data uint32 1 :offset 12) + (dataf float 1 :offset 12) + (datac uint8 1 :offset 12) ) :method-count-assert 9 :size-assert #x8c @@ -73,14 +73,17 @@ (num-alloc uint32 2 :offset-assert 20) (is-3d basic :offset-assert 28) (flags uint32 :offset-assert 32) - (alloc-table uint32 :offset-assert 36) - (cpuinfo-table sparticle-cpuinfo :offset-assert 40) - (vecdata-table uint32 :offset-assert 44) - (adgifdata-table uint32 :offset-assert 48) + (alloc-table (pointer uint64) :offset-assert 36) + (cpuinfo-table (inline-array sparticle-cpuinfo) :offset-assert 40) + (vecdata-table pointer :offset-assert 44) + (adgifdata-table (inline-array adgif-shader) :offset-assert 48) ) :method-count-assert 9 :size-assert #x34 :flag-assert #x900000034 + (:methods + (new (symbol type int int symbol pointer (inline-array adgif-shader)) _type_ 0) + ) ) (define-extern part-group-pointer? (function pointer symbol)) @@ -92,3 +95,6 @@ ;; TODO - for basically everything particle related (define-extern *sp-particle-system-2d* sparticle-system) (define-extern *sp-particle-system-3d* sparticle-system) + +(defun-extern kill-all-particles-with-key sparticle-launch-control none) + diff --git a/goal_src/engine/sparticle/sparticle-launcher-h.gc b/goal_src/engine/sparticle/sparticle-launcher-h.gc index 0cde9a4f6e..95b270f594 100644 --- a/goal_src/engine/sparticle/sparticle-launcher-h.gc +++ b/goal_src/engine/sparticle/sparticle-launcher-h.gc @@ -8,16 +8,17 @@ (deftype sp-field-init-spec (structure) ((field uint16 :offset-assert 0) (flags uint16 :offset-assert 2) - (initial-value int32 :offset-assert 4) - (random-range int32 :offset-assert 8) - (random-mult int32 :offset-assert 12) - (initial-valuef float :offset 4) ;; TODO - floats suck - some of these values end up being NaN - these should come before the int32 fields - (random-rangef float :offset 8) ;; TODO - floats suck - some of these values end up being NaN - these should come before the int32 fields - (random-multf float :offset 12) ;; TODO - floats suck - some of these values end up being NaN - these should come before the int32 fields - (func symbol :offset 4) + (initial-valuef float :offset-assert 4) + (random-rangef float :offset-assert 8) + (random-multf float :offset-assert 12) + (initial-value int32 :offset 4) + (random-range int32 :offset 8) + (random-mult int32 :offset 12) + (sym symbol :offset 4) ;; moved + (func function :offset 4) (tex uint32 :offset 4) - (pntr uint32 :offset 4) - (sym basic :offset 4) + (pntr pointer :offset 4) + ;; gap (sound basic :offset 4) ) :method-count-assert 9 @@ -36,15 +37,15 @@ ) (deftype sparticle-group-item (structure) - ((launcher uint32 :offset-assert 0) - (fade-after meters :offset-assert 4) - (falloff-to meters :offset-assert 8) - (flags uint16 :offset-assert 12) - (period uint16 :offset-assert 14) - (length uint16 :offset-assert 16) - (offset uint16 :offset-assert 18) - (hour-mask uint32 :offset-assert 20) - (binding uint32 :offset-assert 24) + ((launcher uint32 :offset-assert 0) + (fade-after meters :offset-assert 4) + (falloff-to meters :offset-assert 8) + (flags uint16 :offset-assert 12) + (period uint16 :offset-assert 14) + (length uint16 :offset-assert 16) + (offset uint16 :offset-assert 18) + (hour-mask uint32 :offset-assert 20) + (binding uint32 :offset-assert 24) ) :method-count-assert 9 :size-assert #x1c @@ -52,20 +53,20 @@ ) (deftype sparticle-launch-state (structure) - ((group-item sparticle-group-item :offset-assert 0) - (flags uint16 :offset-assert 4) - (randomize uint16 :offset-assert 6) - (origin vector :offset-assert 8) - (sprite3d sprite-vec-data-3d :offset-assert 12) - (sprite basic :offset-assert 16) - (offset uint32 :offset-assert 20) - (accum float :offset-assert 24) - (spawn-time uint32 :offset-assert 28) - (swarm basic :offset 20) - (seed uint32 :offset 24) - (time uint32 :offset 28) - (spec basic :offset 16) - (id uint32 :offset 12) + ((group-item sparticle-group-item :offset-assert 0) + (flags uint16 :offset-assert 4) + (randomize uint16 :offset-assert 6) + (origin vector :offset-assert 8) + (sprite3d sprite-vec-data-3d :offset-assert 12) + (sprite basic :offset-assert 16) + (offset uint32 :offset-assert 20) + (accum float :offset-assert 24) + (spawn-time uint32 :offset-assert 28) + (swarm basic :offset 20) + (seed uint32 :offset 24) + (time uint32 :offset 28) + (spec basic :offset 16) + (id uint32 :offset 12) ) :method-count-assert 9 :size-assert #x20 @@ -90,26 +91,25 @@ ) (deftype sparticle-launch-control (inline-array-class) - ((group basic :offset-assert 16) - (proc basic :offset-assert 20) - (local-clock int32 :offset-assert 24) - (fade float :offset-assert 28) - (matrix int32 :offset-assert 32) - (last-spawn-frame int32 :offset-assert 36) - (last-spawn-time int32 :offset-assert 40) - (center vector :inline :offset-assert 48) - (data uint8 :dynamic :offset-assert 64) + ((group sparticle-launch-group :offset-assert 16) + (proc process :offset-assert 20) + (local-clock int32 :offset-assert 24) + (fade float :offset-assert 28) + (matrix int32 :offset-assert 32) + (last-spawn-frame int32 :offset-assert 36) + (last-spawn-time int32 :offset-assert 40) + (center vector :inline :offset-assert 48) + (data sparticle-launch-state :inline :dynamic :offset-assert 64) ) :method-count-assert 14 :size-assert #x40 :flag-assert #xe00000040 (:methods - (dummy-9 () none 9) + (initialize (_type_ sparticle-launch-group process) none 9) (dummy-10 () none 10) (dummy-11 (_type_ vector) none 11) (deactivate (_type_) none 12) (dummy-13 () none 13) ) ) - (set! (-> sparticle-launch-control heap-base) (the-as uint 32)) diff --git a/goal_src/engine/sparticle/sparticle-launcher.gc b/goal_src/engine/sparticle/sparticle-launcher.gc index adf2b87761..90f955f2e0 100644 --- a/goal_src/engine/sparticle/sparticle-launcher.gc +++ b/goal_src/engine/sparticle/sparticle-launcher.gc @@ -8,9 +8,35 @@ ;; TODO - for shadow (define *part-id-table* (new 'global 'boxed-array sparticle-launcher 3584)) (define *part-group-id-table* (new 'global 'boxed-array sparticle-launch-group 1024)) +(define *particle-300hz-timer* 0) ;; TODO - for particle related code (define-extern sp-launch-particles-var (function sparticle-system sparticle-launcher vector symbol symbol float none)) -;; TODO - for static-screen +(defmethod create-launch-control sparticle-launch-group ((obj sparticle-launch-group) (arg0 process)) + (let ((gp-0 (new 'process 'sparticle-launch-control (-> obj length)))) + (when (zero? gp-0) + (go process-drawable-art-error "memory") + (return (the-as sparticle-launch-control 0)) + ) + ;;(initialize gp-0 obj arg0) + gp-0 + ) + ) + +(defmethod deactivate sparticle-launch-control ((obj sparticle-launch-control)) + (countdown (v1-0 (-> obj length)) + (let ((a0-3 (-> obj data v1-0))) + (set! (-> a0-3 flags) (logand -3 (-> a0-3 flags))) + ) + ) + (set! (-> obj local-clock) 0) + (set! (-> obj fade) 1.0) + (kill-all-particles-with-key obj) + (if (> (-> obj matrix) 0) + (sprite-release-user-hvdf (-> obj matrix)) + ) + (none) + ) + (define-extern lookup-part-group-by-name (function string basic)) diff --git a/goal_src/engine/sparticle/sparticle.gc b/goal_src/engine/sparticle/sparticle.gc index 3703a58a8a..77365e1d35 100644 --- a/goal_src/engine/sparticle/sparticle.gc +++ b/goal_src/engine/sparticle/sparticle.gc @@ -8,6 +8,92 @@ ;; TODO - for particle code (define-extern sp-kill-particle (function sparticle-system sparticle-cpuinfo none)) +(defmethod new sparticle-system + ((allocation symbol) + (type-to-make type) + (arg0 int) + (arg1 int) + (arg2 symbol) + (arg3 pointer) + (arg4 (inline-array adgif-shader)) + ) + (let + ((gp-0 + (object-new allocation type-to-make (the-as int (-> type-to-make size))) + ) + ) + (let* ((v1-3 (/ (+ arg0 63) 64)) + (a0-2 (/ (+ arg1 63) 64)) + (a1-2 (* v1-3 64)) + (a2-2 (* a0-2 64)) + (s2-1 (+ v1-3 a0-2)) + (s5-1 (+ a1-2 a2-2)) + ) + (set! (-> gp-0 blocks 0) v1-3) + (set! (-> gp-0 length 0) (the-as uint a1-2)) + (set! (-> gp-0 num-alloc 0) (the-as uint 0)) + (set! (-> gp-0 blocks 1) a0-2) + (set! (-> gp-0 length 1) (the-as uint a2-2)) + (set! (-> gp-0 num-alloc 1) (the-as uint 0)) + (set! (-> gp-0 is-3d) arg2) + (set! + (-> gp-0 alloc-table) + (the-as (pointer uint64) (malloc 'global (* s2-1 8))) + ) + (set! + (-> gp-0 cpuinfo-table) + (the-as (inline-array sparticle-cpuinfo) (malloc 'global (* 144 s5-1))) + ) + (set! (-> gp-0 vecdata-table) arg3) + (set! (-> gp-0 adgifdata-table) arg4) + (dotimes (v1-5 s2-1) + (set! (-> gp-0 alloc-table v1-5) (the-as uint -1)) + ) + (dotimes (s4-1 s5-1) + (set! (-> gp-0 cpuinfo-table s4-1 valid) #f) + (set! + (-> gp-0 cpuinfo-table s4-1 sprite) + (the-as sprite-vec-data-2d (&+ (-> gp-0 vecdata-table) (* 48 s4-1))) + ) + (set! (-> gp-0 cpuinfo-table s4-1 adgif) (-> gp-0 adgifdata-table s4-1)) + (adgif-shader<-texture-simple! + (-> gp-0 adgifdata-table s4-1) + (the-as texture #f) + ) + (set! + (-> gp-0 adgifdata-table s4-1 alpha) + (new 'static 'gs-miptbp :tbp1 #x48) + ) + ) + ) + gp-0 + ) + ) + +(define *sp-particle-system-2d* + (new + 'global + 'sparticle-system + 1920 + 128 + #f + (-> *sprite-array-2d* vec-data) + (-> *sprite-array-2d* adgif-data) + ) + ) + +(define *sp-particle-system-3d* + (new + 'global + 'sparticle-system + 256 + 0 + #t + (-> *sprite-array-3d* vec-data) + (-> *sprite-array-3d* adgif-data) + ) + ) + (defun set-particle-frame-time ((arg0 int)) (cond ((= arg0 5) @@ -50,3 +136,63 @@ 0 (none) ) + +(defun sparticle-kill-it ((arg0 sparticle-system) (arg1 sparticle-cpuinfo)) + (set! (-> arg1 timer) 0) + (set! (-> arg1 func) (the-as basic 0)) + (when (and (-> arg1 binding) (nonzero? (-> arg1 binding))) + (set! (-> arg1 binding flags) (logand -4 (-> arg1 binding flags))) + (set! (-> arg1 binding) #f) + ) + (none) + ) + +(defun forall-particles-with-key-runner ((arg0 sparticle-launch-control) (arg1 (function sparticle-system sparticle-cpuinfo none)) (arg2 sparticle-system)) + (local-vars (sv-16 int)) + (let ((s3-0 (the-as object (-> arg2 cpuinfo-table 0))) + (s2-0 (&+ (-> arg2 vecdata-table) 0)) + (s1-0 (+ (-> arg2 blocks 0) (-> arg2 blocks 1))) + ) + (dotimes (s0-0 s1-0) + (cond + ((!= (-> arg2 alloc-table s0-0) -1) + (set! sv-16 0) + (while (< sv-16 64) + (if + (and + (-> (the-as sparticle-cpuinfo s3-0) valid) + (= (-> (the-as sparticle-cpuinfo s3-0) key) arg0) + ) + (arg1 arg2 (the-as sparticle-cpuinfo s3-0)) + ) + (set! s3-0 (-> (the-as (inline-array sparticle-cpuinfo) s3-0) 1)) + (&+! s2-0 48) + (set! sv-16 (+ sv-16 1)) + ) + ) + (else + (set! s3-0 (-> (the-as (inline-array sparticle-cpuinfo) s3-0) 64)) + (&+! s2-0 3072) + ) + ) + ) + ) + (none) + ) + +(defun forall-particles-with-key ((arg0 sparticle-launch-control) (arg1 (function sparticle-system sparticle-cpuinfo none)) (arg2 symbol) (arg3 symbol)) + (if arg2 + (forall-particles-with-key-runner arg0 arg1 *sp-particle-system-2d*) + ) + (if arg3 + (forall-particles-with-key-runner arg0 arg1 *sp-particle-system-3d*) + ) + (none) + ) + +(defun kill-all-particles-with-key ((arg0 sparticle-launch-control)) + (forall-particles-with-key arg0 sparticle-kill-it #t #t) + (none) + ) + + diff --git a/goal_src/engine/target/logic-target.gc b/goal_src/engine/target/logic-target.gc index b4f88ec9e5..870e614d44 100644 --- a/goal_src/engine/target/logic-target.gc +++ b/goal_src/engine/target/logic-target.gc @@ -2911,40 +2911,9 @@ (set! (-> self water flags) (the-as uint #x4000f0)) (reset-target-state #t) (set! (-> self control unknown-vector52 quad) (-> self control trans quad)) - (set! - (-> self control unknown-vector52 y) - (+ -819200.0 (-> self control unknown-vector52 y)) - ) + (set!(-> self control unknown-vector52 y) (+ -819200.0 (-> self control unknown-vector52 y))) (set! (-> self align) (new 'process 'align-control self)) - (let ((s5-1 (get-process *16k-dead-pool* sidekick #x4000))) - (set! (-> self sidekick) (the-as (pointer sidekick) (when s5-1 - (let - ((t9-37 - (method-of-type - sidekick - activate - ) - ) - ) - (t9-37 - (the-as sidekick s5-1) - self - 'sidekick - (the-as - pointer - #x70004000 - ) - ) - ) - (run-now-in-process - s5-1 - init-sidekick - ) - (-> s5-1 ppointer) - ) - ) - ) - ) + (set! (-> self sidekick) (make-init-process sidekick init-sidekick :from *16k-dead-pool* :to self :stack *scratch-memory-top*)) (set! (-> self manipy) (the-as (pointer manipy) #f)) (set! (-> self event-hook) target-generic-event-handler) (set! (-> self current-level) #f) @@ -2975,21 +2944,7 @@ (set! (-> *level* border?) #f) (set! (-> *setting-control* default border-mode) #f) (stop arg0) - (let* ((s5-0 (get-process *target-dead-pool* target #x4000)) - (v1-3 (when s5-0 - (let ((t9-2 (method-of-type target activate))) - (t9-2 - (the-as target s5-0) - *target-pool* - 'target - (&-> *dram-stack* 14336) - ) - ) - (run-now-in-process s5-0 init-target arg1) - (-> s5-0 ppointer) - ) - ) - ) + (let ((v1-3 (make-init-process target init-target arg1 :from *target-dead-pool* :to *target-pool*))) (if v1-3 (set! *target* (the-as target (-> v1-3 0 self))) (set! *target* #f) diff --git a/goal_src/engine/target/target-part.gc b/goal_src/engine/target/target-part.gc index e9eae135b5..f8b3a0e311 100644 --- a/goal_src/engine/target/target-part.gc +++ b/goal_src/engine/target/target-part.gc @@ -1380,7 +1380,7 @@ (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-copy-target-y-rot + :sym 'birth-func-copy-target-y-rot ) (new 'static 'sp-field-init-spec :field #x6 @@ -1514,7 +1514,7 @@ (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-copy-target-y-rot + :sym 'birth-func-copy-target-y-rot ) (new 'static 'sp-field-init-spec :field #x6 @@ -1694,7 +1694,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'part-tracker-track-target-joint + :sym 'part-tracker-track-target-joint ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4511,7 +4511,7 @@ (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-target-orient + :sym 'birth-func-target-orient ) (new 'static 'sp-field-init-spec :field #x6 @@ -5343,7 +5343,7 @@ (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-target-orient + :sym 'birth-func-target-orient ) (new 'static 'sp-field-init-spec :field #x6 @@ -5574,7 +5574,7 @@ (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-target-orient + :sym 'birth-func-target-orient ) (new 'static 'sp-field-init-spec :field #x6 @@ -5804,7 +5804,7 @@ (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-target-orient + :sym 'birth-func-target-orient ) (new 'static 'sp-field-init-spec :field #x6 @@ -9333,7 +9333,7 @@ (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-target-orient + :sym 'birth-func-target-orient ) (new 'static 'sp-field-init-spec :field #x6 @@ -9541,7 +9541,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'part-first-person-hud-left-func + :sym 'part-first-person-hud-left-func ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -9616,7 +9616,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'part-first-person-hud-right-func + :sym 'part-first-person-hud-right-func ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -9685,7 +9685,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'part-first-person-hud-selector-func + :sym 'part-first-person-hud-selector-func ) (new 'static 'sp-field-init-spec :field #x43) ) diff --git a/goal_src/engine/target/target-util.gc b/goal_src/engine/target/target-util.gc index 5e4cab1bb4..fd1d14284f 100644 --- a/goal_src/engine/target/target-util.gc +++ b/goal_src/engine/target/target-util.gc @@ -136,222 +136,6 @@ :flag-assert #x900000258 ) -;; definition for method 3 of type target-bank -(defmethod inspect target-bank ((obj target-bank)) - (format #t "[~8x] ~A~%" obj (-> obj type)) - (format - #t - "~Tjump-collide-offset: (meters ~m)~%" - (-> obj jump-collide-offset) - ) - (format #t "~Tjump-height-min: (meters ~m)~%" (-> obj jump-height-min)) - (format #t "~Tjump-height-max: (meters ~m)~%" (-> obj jump-height-max)) - (format - #t - "~Tdouble-jump-height-min: (meters ~m)~%" - (-> obj double-jump-height-min) - ) - (format - #t - "~Tdouble-jump-height-max: (meters ~m)~%" - (-> obj double-jump-height-max) - ) - (format - #t - "~Tflip-jump-height-min: (meters ~m)~%" - (-> obj flip-jump-height-min) - ) - (format - #t - "~Tflip-jump-height-max: (meters ~m)~%" - (-> obj flip-jump-height-max) - ) - (format - #t - "~Tduck-jump-height-min: (meters ~m)~%" - (-> obj duck-jump-height-min) - ) - (format - #t - "~Tduck-jump-height-max: (meters ~m)~%" - (-> obj duck-jump-height-max) - ) - (format - #t - "~Tflop-jump-height-min: (meters ~m)~%" - (-> obj flop-jump-height-min) - ) - (format - #t - "~Tflop-jump-height-max: (meters ~m)~%" - (-> obj flop-jump-height-max) - ) - (format - #t - "~Tattack-jump-height-min: (meters ~m)~%" - (-> obj attack-jump-height-min) - ) - (format - #t - "~Tattack-jump-height-max: (meters ~m)~%" - (-> obj attack-jump-height-max) - ) - (format - #t - "~Tedge-grab-jump-height-min: (meters ~m)~%" - (-> obj edge-grab-jump-height-min) - ) - (format - #t - "~Tedge-grab-jump-height-max: (meters ~m)~%" - (-> obj edge-grab-jump-height-max) - ) - (format - #t - "~Tswim-jump-height-min: (meters ~m)~%" - (-> obj swim-jump-height-min) - ) - (format - #t - "~Tswim-jump-height-max: (meters ~m)~%" - (-> obj swim-jump-height-max) - ) - (format - #t - "~Ttube-jump-height-min: (meters ~m)~%" - (-> obj tube-jump-height-min) - ) - (format - #t - "~Ttube-jump-height-max: (meters ~m)~%" - (-> obj tube-jump-height-max) - ) - (format #t "~Twheel-duration: ~D~%" (-> obj wheel-duration)) - (format #t "~Twheel-jump-pre-window: ~D~%" (-> obj wheel-jump-pre-window)) - (format #t "~Twheel-jump-post-window: ~D~%" (-> obj wheel-jump-post-window)) - (format #t "~Twheel-timeout: ~D~%" (-> obj wheel-timeout)) - (format #t "~Twheel-speed-min: (meters ~m)~%" (-> obj wheel-speed-min)) - (format #t "~Twheel-speed-inc: (meters ~m)~%" (-> obj wheel-speed-inc)) - (format #t "~Twheel-flip-duration: ~D~%" (-> obj wheel-flip-duration)) - (format #t "~Twheel-flip-height: (meters ~m)~%" (-> obj wheel-flip-height)) - (format #t "~Twheel-flip-dist: (meters ~m)~%" (-> obj wheel-flip-dist)) - (format - #t - "~Twheel-flip-art-height: (meters ~m)~%" - (-> obj wheel-flip-art-height) - ) - (format - #t - "~Twheel-flip-art-dist: (meters ~m)~%" - (-> obj wheel-flip-art-dist) - ) - (format - #t - "~Tduck-slide-distance: (meters ~m)~%" - (-> obj duck-slide-distance) - ) - (format #t "~Tfall-far: (meters ~m)~%" (-> obj fall-far)) - (format #t "~Tfall-far-inc: (meters ~m)~%" (-> obj fall-far-inc)) - (format #t "~Tattack-timeout: ~D~%" (-> obj attack-timeout)) - (format #t "~Tground-timeout: ~D~%" (-> obj ground-timeout)) - (format #t "~Tslide-down-timeout: ~D~%" (-> obj slide-down-timeout)) - (format #t "~Tfall-timeout: ~D~%" (-> obj fall-timeout)) - (format - #t - "~Tfall-stumble-threshold: (meters ~m)~%" - (-> obj fall-stumble-threshold) - ) - (format - #t - "~Tyellow-projectile-speed: (meters ~m)~%" - (-> obj yellow-projectile-speed) - ) - (format - #t - "~Thit-invulnerable-timeout: ~D~%" - (-> obj hit-invulnerable-timeout) - ) - (format #t "~Trun-cycle-length: ~f~%" (-> obj run-cycle-length)) - (format #t "~Twalk-cycle-dist: (meters ~m)~%" (-> obj walk-cycle-dist)) - (format #t "~Twalk-up-cycle-dist: (meters ~m)~%" (-> obj walk-up-cycle-dist)) - (format - #t - "~Twalk-down-cycle-dist: (meters ~m)~%" - (-> obj walk-down-cycle-dist) - ) - (format - #t - "~Twalk-side-cycle-dist: (meters ~m)~%" - (-> obj walk-side-cycle-dist) - ) - (format #t "~Trun-cycle-dist: (meters ~m)~%" (-> obj run-cycle-dist)) - (format #t "~Trun-up-cycle-dist: (meters ~m)~%" (-> obj run-up-cycle-dist)) - (format - #t - "~Trun-down-cycle-dist: (meters ~m)~%" - (-> obj run-down-cycle-dist) - ) - (format - #t - "~Trun-side-cycle-dist: (meters ~m)~%" - (-> obj run-side-cycle-dist) - ) - (format - #t - "~Trun-wall-cycle-dist: (meters ~m)~%" - (-> obj run-wall-cycle-dist) - ) - (format - #t - "~Tduck-walk-cycle-dist: (meters ~m)~%" - (-> obj duck-walk-cycle-dist) - ) - (format - #t - "~Twade-shallow-walk-cycle-dist: (meters ~m)~%" - (-> obj wade-shallow-walk-cycle-dist) - ) - (format - #t - "~Twade-deep-walk-cycle-dist: (meters ~m)~%" - (-> obj wade-deep-walk-cycle-dist) - ) - (format #t "~Tsmack-surface-dist: (meters ~m)~%" (-> obj smack-surface-dist)) - (format - #t - "~Tsmack-surface-height: (meters ~m)~%" - (-> obj smack-surface-height) - ) - (format #t "~Tmin-dive-depth: (meters ~m)~%" (-> obj min-dive-depth)) - (format #t "~Troot-radius: (meters ~m)~%" (-> obj root-radius)) - (format #t "~Troot-offset: ~`vector`P~%" (-> obj root-offset)) - (format #t "~Tbody-radius: (meters ~m)~%" (-> obj body-radius)) - (format #t "~Tedge-radius: (meters ~m)~%" (-> obj edge-radius)) - (format #t "~Tedge-offset: ~`vector`P~%" (-> obj edge-offset)) - (format #t "~Thead-radius: (meters ~m)~%" (-> obj head-radius)) - (format #t "~Thead-height: (meters ~m)~%" (-> obj head-height)) - (format #t "~Thead-offset: ~`vector`P~%" (-> obj head-offset)) - (format #t "~Tspin-radius: (meters ~m)~%" (-> obj spin-radius)) - (format #t "~Tspin-offset: ~`vector`P~%" (-> obj spin-offset)) - (format #t "~Tduck-spin-radius: (meters ~m)~%" (-> obj duck-spin-radius)) - (format #t "~Tduck-spin-offset: ~`vector`P~%" (-> obj duck-spin-offset)) - (format #t "~Tpunch-radius: (meters ~m)~%" (-> obj punch-radius)) - (format #t "~Tpunch-offset: ~`vector`P~%" (-> obj punch-offset)) - (format #t "~Tuppercut-radius: (meters ~m)~%" (-> obj uppercut-radius)) - (format #t "~Tuppercut0-offset: ~`vector`P~%" (-> obj uppercut0-offset)) - (format #t "~Tuppercut1-offset: ~`vector`P~%" (-> obj uppercut1-offset)) - (format #t "~Tflop-radius: (meters ~m)~%" (-> obj flop-radius)) - (format #t "~Tflop0-offset: ~`vector`P~%" (-> obj flop0-offset)) - (format #t "~Tflop1-offset: ~`vector`P~%" (-> obj flop1-offset)) - (format #t "~Tstuck-time: (seconds ~e)~%" (-> obj stuck-time)) - (format #t "~Tstuck-timeout: (seconds ~e)~%" (-> obj stuck-timeout)) - (format #t "~Tstuck-distance: (meters ~m)~%" (-> obj stuck-distance)) - (format #t "~Ttongue-pull-speed-min: ~f~%" (-> obj tongue-pull-speed-min)) - (format #t "~Ttongue-pull-speed-max: ~f~%" (-> obj tongue-pull-speed-max)) - (format #t "~Tyellow-attack-timeout: ~D~%" (-> obj yellow-attack-timeout)) - obj - ) - ;; definition for symbol *TARGET-bank*, type target-bank (define *TARGET-bank* diff --git a/goal_src/engine/ui/hud-classes.gc b/goal_src/engine/ui/hud-classes.gc index a54578e262..70e049ad02 100644 --- a/goal_src/engine/ui/hud-classes.gc +++ b/goal_src/engine/ui/hud-classes.gc @@ -5,8 +5,14 @@ ;; name in dgo: hud-classes ;; dgos: GAME, ENGINE + +(define-extern *fuelcell-naked-sg* skeleton-group) + +(defun hud-hidden? () + #t + ) + ;; TODO - for assistant-firecanyon (define-extern hide-hud (function none)) -(define-extern hud-hidden? (function symbol)) ;; TODO - for static-screen (define-extern hide-hud-quick (function none)) diff --git a/goal_src/engine/ui/hud-h.gc b/goal_src/engine/ui/hud-h.gc index 0678d7c9d8..6faa8c2ddd 100644 --- a/goal_src/engine/ui/hud-h.gc +++ b/goal_src/engine/ui/hud-h.gc @@ -7,7 +7,7 @@ ;; definition of type hud-icon (deftype hud-icon (basic) - ((icon uint32 :offset-assert 4) + ((icon (pointer manipy) :offset-assert 4) (icon-y int32 :offset-assert 8) (icon-x int32 :offset-assert 12) (icon-z int32 :offset-assert 16) @@ -21,7 +21,7 @@ ;; definition of type hud-particle (deftype hud-particle (basic) - ((part basic :offset-assert 4) + ((part sparticle-launch-control :offset-assert 4) (init-pos vector :inline :offset-assert 16) (pos vector :inline :offset-assert 32) (prev-pos vector :inline :offset-assert 48) @@ -114,5 +114,7 @@ ) ) -;; TODO - for logic-target -(define-extern activate-hud (function process none)) +(defun-extern activate-hud process none) +(defun-extern activate-orb-all int int) + + diff --git a/goal_src/engine/ui/progress-h.gc b/goal_src/engine/ui/progress-h.gc index 1381949c1c..4de00cac6c 100644 --- a/goal_src/engine/ui/progress-h.gc +++ b/goal_src/engine/ui/progress-h.gc @@ -5,9 +5,6 @@ ;; name in dgo: progress-h ;; dgos: GAME, ENGINE -;; progress screen display-state enum: -;; 32 - nocd -;; 33 - dirtycd (deftype count-info (structure) ((money-count int32 :offset-assert 0) @@ -57,20 +54,59 @@ (param1 float :offset-assert 24) (param2 float :offset-assert 28) (param3 int32 :offset-assert 32) - (value-to-modify uint32 :offset-assert 36) + (value-to-modify pointer :offset-assert 36) ) :method-count-assert 9 :size-assert #x28 :flag-assert #x900000028 ) +(defenum progress-screen + :type int64 + (invalid -1) + (fuel-cell 0) + (money 1) + (buzzer 2) + (settings 3) + (game-settings 4) + (graphic-settings 5) + (sound-settings 6) + (memcard-no-space 7) + (memcard-not-inserted 8) + (memcard-not-formatted 9) + (memcard-format 10) + (memcard-data-exists 11) + (memcard-loading 12) + (memcard-saving 13) + (memcard-formatting 14) + (memcard-creating 15) + (load-game 16) + (save-game 17) + (save-game-title 18) + (memcard-insert 19) + (memcard-error-loading 20) + (memcard-error-saving 21) + (memcard-removed 22) + (memcard-no-data 23) + (memcard-error-formatting 24) + (memcard-error-creating 25) + (memcard-auto-save-error 26) + (title 27) + (settings-title 28) + (auto-save 29) + (pal-change-to-60hz 30) + (pal-now-60hz 31) + (no-disc 32) + (bad-disc 33) + (quit 34) + ) (deftype progress (process) ((current-debug-string int32 :offset-assert 112) (current-debug-language int32 :offset-assert 116) (current-debug-group int32 :offset-assert 120) (in-out-position int32 :offset-assert 124) - (display-state uint64 :offset-assert 128) - (next-display-state uint64 :offset-assert 136) + (display-state progress-screen :offset-assert 128) + (next-display-state progress-screen :offset-assert 136) (option-index int32 :offset-assert 144) (selected-option basic :offset-assert 148) (completion-percentage float :offset-assert 152) @@ -108,80 +144,83 @@ (total-nb-of-orbs int32 :offset-assert 284) (total-nb-of-buzzers int32 :offset-assert 288) (card-info mc-slot-info :offset-assert 292) - (last-option-index-change uint64 :offset-assert 296) + (last-option-index-change int64 :offset-assert 296) (video-mode-timeout uint64 :offset-assert 304) - (display-state-stack uint64 5 :offset-assert 312) - (option-index-stack uint32 5 :offset-assert 352) + (display-state-stack progress-screen 5 :offset-assert 312) + (option-index-stack int32 5 :offset-assert 352) (display-state-pos int32 :offset-assert 372) (nb-of-icons int32 :offset-assert 376) - (icons uint32 6 :offset-assert 380) + (icons hud-icon 6 :offset-assert 380) (max-nb-of-particles int32 :offset-assert 404) (nb-of-particles int32 :offset-assert 408) - (particles uint32 40 :offset-assert 412) - (particle-state uint32 40 :offset-assert 572) + (particles hud-particle 40 :offset-assert 412) + (particle-state int32 40 :offset-assert 572) ) :method-count-assert 59 :size-assert #x2dc - :flag-assert #x3b000002dc + :heap-base #x270 + :flag-assert #x3b027002dc (:methods - (dummy-14 () none 14) - (dummy-15 () none 15) - (dummy-16 () none 16) - (dummy-17 () none 17) + (dummy-14 (_type_) none 14) + (dummy-15 (_type_) none 15) + (dummy-16 (_type_) none 16) + (draw-progress (_type_) none 17) (dummy-18 () none 18) - (dummy-19 () none 19) + (dummy-19 (_type_) symbol 19) (hidden? (_type_) symbol 20) - (dummy-21 () none 21) - (dummy-22 () none 22) - (TODO-RENAME-23 (_type_ symbol symbol) none 23) - (dummy-24 () none 24) - (dummy-25 () none 25) - (dummy-26 () none 26) - (dummy-27 () none 27) - (dummy-28 () none 28) - (dummy-29 () none 29) - (dummy-30 () none 30) - (dummy-31 () none 31) - (dummy-32 (_type_) none 32) - (dummy-33 () none 33) - (dummy-34 () none 34) - (dummy-35 () none 35) - (dummy-36 () none 36) - (dummy-37 () none 37) - (dummy-38 () none 38) - (dummy-39 () none 39) - (dummy-40 () none 40) - (dummy-41 () none 41) - (dummy-42 () none 42) - (dummy-43 () none 43) - (dummy-44 () none 44) - (dummy-45 () none 45) - (dummy-46 () none 46) - (dummy-47 () none 47) - (dummy-48 () none 48) - (dummy-49 () none 49) - (dummy-50 () none 50) - (dummy-51 () none 51) - (dummy-52 () none 52) - (dummy-53 () none 53) - (dummy-54 () none 54) - (dummy-55 () none 55) - (dummy-56 () none 56) - (dummy-57 () none 57) - (dummy-58 () none 58) + (adjust-sprites (_type_) none 21) + (adjust-icons (_type_) none 22) + (adjust-ratios (_type_ symbol symbol) none 23) + (draw-fuel-cell-screen (_type_ int) none 24) + (draw-money-screen (_type_ int) none 25) + (draw-buzzer-screen (_type_ int) none 26) + (draw-notice-screen (_type_) none 27) + (draw-options (_type_ int int float) none 28) + (dummy-29 (_type_) none 29) + (respond-progress (_type_) none 30) + (dummy-31 (_type_) none 31) + (dummy-32 (_type_) symbol 32) + (initialize-icons (_type_) none 33) + (initialize-particles (_type_) none 34) + (draw-memcard-storage-error (_type_ font-context) none 35) + (draw-memcard-data-exists (_type_ font-context) none 36) + (draw-memcard-no-data (_type_ font-context) none 37) + (draw-memcard-accessing (_type_ font-context) none 38) + (draw-memcard-insert (_type_ font-context) none 39) + (draw-memcard-file-select (_type_ font-context) none 40) + (draw-memcard-auto-save-error (_type_ font-context) none 41) + (draw-memcard-removed (_type_ font-context) none 42) + (draw-memcard-error (_type_ font-context) none 43) + (dummy-44 (_type_) none 44) + (push! (_type_) none 45) + (pop! (_type_) none 46) + (dummy-47 (_type_) none 47) + (enter! (_type_ progress-screen int) none 48) + (draw-memcard-format (_type_ font-context) none 49) + (draw-auto-save (_type_ font-context) none 50) + (set-transition-progress! (_type_ int) none 51) + (set-transition-speed! (_type_) none 52) + (dummy-53 (_type_ progress-screen) progress-screen 53) + (draw-pal-change-to-60hz (_type_ font-context) none 54) + (draw-pal-now-60hz (_type_ font-context) none 55) + (draw-no-disc (_type_ font-context) none 56) + (draw-bad-disc (_type_ font-context) none 57) + (draw-quit (_type_ font-context) none 58) ) ) (define *progress-process* (the (pointer progress) #f)) (define *progress-last-task-index* 0) -(defun-extern activate-progress process int int) - +(defun-extern activate-progress process progress-screen none) +(defun-extern hide-progress-screen none) +(defun-extern hide-progress-icons none) (define-extern *level-task-data* (array level-tasks-info)) (define-extern *level-task-data-remap* (array int32)) -(define-extern get-game-count (function int count-info)) -(define-extern activate-orb-all (function int int)) ;; maybe in hud? -(define-extern progress-allowed? (function symbol)) -(define-extern pause-allowed? (function symbol)) -(define-extern deactivate-progress (function none)) -(define-extern calculate-completion (function symbol float)) \ No newline at end of file +(defun-extern get-game-count int count-info) +(defun-extern progress-allowed? symbol) +(defun-extern pause-allowed? symbol) +(defun-extern deactivate-progress none) +(defun-extern calculate-completion progress float) +(defun-extern make-current-level-available-to-progress none) + diff --git a/goal_src/engine/ui/progress/progress-draw.gc b/goal_src/engine/ui/progress/progress-draw.gc index a82037d1d2..412e111d65 100644 --- a/goal_src/engine/ui/progress/progress-draw.gc +++ b/goal_src/engine/ui/progress/progress-draw.gc @@ -5,3 +5,2513 @@ ;; name in dgo: progress-draw ;; dgos: GAME, ENGINE + +(defun adjust-pos ((arg0 int) (arg1 int)) + (if (< arg0 arg1) + 0 + (- arg0 arg1) + ) + ) + +(defmethod draw-fuel-cell-screen progress ((obj progress) (arg0 int)) + (local-vars + (sv-112 int) + (sv-128 int) + (sv-144 int) + (sv-160 (function trsqv float quaternion)) + (sv-176 trsqv) + (sv-192 int) + (sv-208 int) + (sv-224 (function string float font-context int none)) + ) + (hide-progress-icons) + (let ((s5-0 (-> *level-task-data* arg0))) + (if + (and + (= *cheat-mode* 'debug) + (logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons l3)) + ) + (format *stdcon* "fcd:~d~%" (-> *game-info* fuel-cell-deaths)) + ) + (set! (-> *progress-process* 0 particles 14 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 15 init-pos x) -320.0) + (set! (-> *progress-process* 0 icons 4 icon-x) -320) + (when (and (!= s5-0 #f) (= (-> *game-info* level-opened arg0) 1)) + (set! + sv-112 + (- (-> *task-egg-starting-x* (-> s5-0 nb-of-tasks)) (-> obj left-x-offset)) + ) + (set! sv-128 (the int (* 47.0 (-> obj transition-percentage-invert)))) + 0 + (let ((s0-0 6) + (s2-0 0) + (s4-1 (if (= (-> obj level-transition) 1) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (f30-0 (-> obj transition-percentage-invert)) + (s1-0 0) + (s3-0 #f) + ) + (when (-> obj stat-transition) + (set! sv-128 47) + (set! s2-0 (if (!= (-> obj display-state) (-> obj next-display-state)) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (set! s4-1 0) + (set! f30-0 1.0) + ) + (set! sv-144 0) + (while (< sv-144 4) + (let ((a0-18 (-> obj icons sv-144 icon 0 root))) + (set! sv-176 a0-18) + (set! sv-160 (method-of-object sv-176 set-yaw-angle-clear-roll-pitch!)) + (let + ((a1-2 + (+ + (y-angle a0-18) + (* 182.04445 (* 0.5 (-> *display* time-adjust-ratio))) + ) + ) + ) + (sv-160 sv-176 a1-2) + ) + ) + (set! sv-144 (+ sv-144 1)) + ) + (set! + sv-192 + (+ + sv-112 + (/ (- (* 47 (-> s5-0 nb-of-tasks)) (* sv-128 (-> s5-0 nb-of-tasks))) 2) + ) + ) + (set! sv-208 0) + (while (< sv-208 (-> s5-0 nb-of-tasks)) + (let ((v0-4 (get-task-status (-> s5-0 task-info sv-208 task-id))) + (v1-59 -1) + (a0-25 #f) + ) + (set! (-> obj particle-state s0-0) 2) + (cond + ((or (= v0-4 (task-status need-hint)) (= v0-4 (task-status unknown))) + (if (= *kernel-boot-message* 'play) + (set! (-> obj particle-state s0-0) 1) + ) + ) + ((= v0-4 (task-status invalid)) + (set! v1-59 (-> s5-0 task-info sv-208 text-index-when-resolved)) + (set! (-> obj particle-state s0-0) 3) + (set! a0-25 #t) + ) + ((= v0-4 (task-status need-introduction)) + (set! v1-59 0) + ) + ((= v0-4 (task-status need-reminder-a)) + (set! v1-59 0) + ) + ((= v0-4 (task-status need-reminder)) + (set! v1-59 1) + ) + ((= v0-4 (task-status need-reward-speech)) + (set! v1-59 2) + ) + ((= v0-4 (task-status need-resolution)) + (set! v1-59 2) + ) + ) + (if (and (!= *kernel-boot-message* 'play) (= v1-59 -1)) + (set! v1-59 0) + ) + (set! (-> obj particles s0-0 init-pos x) (the float (+ sv-192 s2-0))) + (set! (-> obj particles s0-0 init-pos y) (the float (+ s4-1 204))) + (+! s0-0 1) + (when (= sv-208 (-> obj task-index)) + (set! s1-0 v1-59) + (set! s3-0 a0-25) + (set! (-> obj particles 5 init-pos x) (the float (+ sv-192 s2-0))) + (set! (-> obj particles 5 init-pos y) (the float (+ s4-1 204))) + ) + ) + (set! sv-192 (+ sv-192 sv-128)) + (set! sv-208 (+ sv-208 1)) + ) + (dotimes (v1-77 (- 8 (-> s5-0 nb-of-tasks))) + (set! + (-> *progress-process* 0 particles s0-0 init-pos x) + (the float (+ s2-0 -320)) + ) + (set! (-> obj particles s0-0 init-pos y) (the float (+ s4-1 194))) + (+! s0-0 1) + ) + (when *common-text* + (when + (and + (!= s1-0 -1) + (> (-> s5-0 nb-of-tasks) 0) + (>= (-> obj task-index) 0) + (< (-> obj task-index) (-> s5-0 nb-of-tasks)) + ) + (let + ((s0-1 + (new + 'stack + 'font-context + *font-default-matrix* + (- (+ s2-0 32) (-> obj left-x-offset)) + (+ (/ s4-1 2) 125) + 8325000.0 + (font-color yellow-orange) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-91 s0-1)) + (set! (-> v1-91 width) (the float 328)) + ) + (let ((v1-92 s0-1)) + (set! (-> v1-92 height) (the float 50)) + ) + (let ((v1-93 s0-1)) + (set! (-> v1-93 scale) 0.7) + ) + (set! (-> s0-1 flags) (font-flags shadow kerning middle left large)) + (set! sv-224 print-game-text-scaled) + (let + ((a0-47 + (lookup-text! + *common-text* + (-> s5-0 task-info (-> obj task-index) task-name s1-0) + #f + ) + ) + (a1-57 f30-0) + (a2-15 s0-1) + (a3-2 (the int (* 128.0 f30-0))) + ) + (sv-224 a0-47 a1-57 a2-15 a3-2) + ) + (when s3-0 + (set! + (-> s0-1 origin x) + (the float (- (+ s2-0 32) (-> obj left-x-offset))) + ) + (set! (-> s0-1 origin y) (the float (+ (/ s4-1 2) 175))) + (let ((a0-49 s0-1)) + (set! (-> a0-49 color) (font-color lighter-lighter-blue)) + ) + (let ((v1-104 s0-1)) + (set! (-> v1-104 height) (the float 15)) + ) + (let ((v1-105 s0-1)) + (set! (-> v1-105 scale) 0.5) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id task-completed) #f) + f30-0 + s0-1 + (the int (* 128.0 f30-0)) + ) + ) + ) + ) + ) + ) + ) + ) + 0 + (none) + ) + +(defmethod draw-money-screen progress ((obj progress) (arg0 int)) + (hide-progress-icons) + (let* ((v1-1 (/ (-> obj transition-offset) 16)) + (s4-0 (if (= (-> obj level-transition) 1) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (f30-0 (-> obj transition-percentage-invert)) + (s3-0 (- v1-1)) + ) + (when (-> obj stat-transition) + (set! v1-1 (if (!= (-> obj display-state) (-> obj next-display-state)) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (set! s3-0 v1-1) + (set! s4-0 0) + (set! f30-0 1.0) + ) + (set! + (-> obj particles 15 init-pos x) + (the float (- (+ v1-1 150) (-> obj left-x-offset))) + ) + (set! (-> obj particles 15 init-pos y) (the float (+ s4-0 214))) + (set! (-> obj icons 4 icon-x) (- (+ v1-1 148) (-> obj left-x-offset))) + (set! (-> obj icons 4 icon-y) (+ (-> obj big-orb-y-offset) s4-0)) + (let ((a0-15 (-> obj icons 4 icon 0 root))) + (set-yaw-angle-clear-roll-pitch! + a0-15 + (- (y-angle a0-15) (* 182.04445 (* 4.0 (-> *display* time-adjust-ratio)))) + ) + ) + (let + ((s4-1 + (new + 'stack + 'font-context + *font-default-matrix* + (- (+ s3-0 200) (-> obj left-x-offset)) + (+ (/ s4-0 2) 96) + 8325000.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-19 s4-1)) + (set! (-> v1-19 width) (the float 328)) + ) + (let ((v1-20 s4-1)) + (set! (-> v1-20 height) (the float 70)) + ) + (set! (-> s4-1 flags) (font-flags shadow kerning large)) + (let ((s3-1 print-game-text-scaled)) + (format + (clear *temp-string*) + "~D/~D" + (-> *game-info* money-per-level arg0) + (-> *game-counts* data arg0 money-count) + ) + (s3-1 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0))) + ) + (let ((v1-26 s4-1)) + (set! (-> v1-26 width) (the float 428)) + ) + (set! (-> s4-1 origin x) (+ -220.0 (-> s4-1 origin x))) + (set! (-> s4-1 origin y) (+ 40.0 (-> s4-1 origin y))) + (set! (-> s4-1 flags) (font-flags shadow kerning middle large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id total-collected) #f) + (* 0.7 f30-0) + s4-1 + (the int (* 128.0 f30-0)) + ) + (set! (-> s4-1 origin y) (+ 15.0 (-> s4-1 origin y))) + (let ((s5-2 print-game-text-scaled)) + (format + (clear *temp-string*) + "~D/~D" + (the int (-> *game-info* money-total)) + (-> obj total-nb-of-orbs) + ) + (s5-2 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0))) + ) + ) + ) + 0 + (none) + ) + +(defmethod draw-buzzer-screen progress ((obj progress) (arg0 int)) + (hide-progress-icons) + (let* ((v1-2 (-> *level-task-data* arg0)) + (a0-3 (/ (-> obj transition-offset) 16)) + (s4-0 (if (= (-> obj level-transition) 1) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (f30-0 (-> obj transition-percentage-invert)) + (s3-0 (- a0-3)) + ) + (when (-> obj stat-transition) + (set! a0-3 (if (!= (-> obj display-state) (-> obj next-display-state)) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (set! s3-0 a0-3) + (set! s4-0 0) + (set! f30-0 1.0) + ) + (set! + (-> obj particles 14 init-pos x) + (the float (- (+ a0-3 150) (-> obj left-x-offset))) + ) + (set! (-> obj particles 14 init-pos y) (the float (+ s4-0 214))) + (let ((s2-0 0)) + (let ((a1-8 (-> v1-2 buzzer-task-index))) + (if (!= a1-8 -1) + (set! s2-0 (buzzer-count *game-info* (-> v1-2 task-info a1-8 task-id))) + ) + ) + (let + ((s4-1 + (new + 'stack + 'font-context + *font-default-matrix* + (- (+ s3-0 200) (-> obj left-x-offset)) + (+ (/ s4-0 2) 96) + 8325000.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-9 s4-1)) + (set! (-> v1-9 width) (the float 328)) + ) + (let ((v1-10 s4-1)) + (set! (-> v1-10 height) (the float 70)) + ) + (set! (-> s4-1 flags) (font-flags shadow kerning large)) + (let ((s3-1 print-game-text-scaled)) + (format + (clear *temp-string*) + "~D/~D" + s2-0 + (-> *game-counts* data arg0 buzzer-count) + ) + (s3-1 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0))) + ) + (let ((v1-14 s4-1)) + (set! (-> v1-14 width) (the float 428)) + ) + (set! (-> s4-1 origin x) (+ -220.0 (-> s4-1 origin x))) + (set! (-> s4-1 origin y) (+ 40.0 (-> s4-1 origin y))) + (set! (-> s4-1 flags) (font-flags shadow kerning middle large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id total-collected) #f) + (* 0.7 f30-0) + s4-1 + (the int (* 128.0 f30-0)) + ) + (set! (-> s4-1 origin y) (+ 15.0 (-> s4-1 origin y))) + (let ((s5-2 print-game-text-scaled)) + (format + (clear *temp-string*) + "~D/~D" + (the int (-> *game-info* buzzer-total)) + (-> obj total-nb-of-buzzers) + ) + (s5-2 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0))) + ) + ) + ) + ) + 0 + (none) + ) + +(defmethod + draw-memcard-storage-error + progress + ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.55) + ) + (let ((v1-1 arg0)) + (set! (-> v1-1 width) (the float 265)) + ) + (let ((v1-2 arg0)) + (set! (-> v1-2 height) (the float 55)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (let ((s4-0 (game-text-id card-not-formatted-title))) + (case (-> obj display-state) + (((progress-screen memcard-no-space)) + (set! s4-0 (game-text-id memcard-no-space)) + ) + (((progress-screen memcard-not-inserted)) + (set! s4-0 (game-text-id memcard-not-inserted)) + ) + ) + (let ((s3-0 print-game-text-scaled)) + (format (clear *temp-string*) (lookup-text! *common-text* s4-0 #f) 1) + (s3-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 70.0) + (let ((v1-12 arg0)) + (set! (-> v1-12 width) (the float 350)) + ) + (let ((v1-13 arg0)) + (set! (-> v1-13 height) (the float 40)) + ) + (let ((s4-1 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id memcard-space-requirement1) #f) + (if (-> obj card-info) + (-> obj card-info mem-required) + 0 + ) + ) + (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (set! (-> arg0 origin y) 115.0) + (let ((v1-17 arg0)) + (set! (-> v1-17 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id memcard-space-requirement2) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-19 arg0)) + (set! (-> v1-19 scale) 0.65) + ) + (set! (-> arg0 origin y) 160.0) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-memcard-format progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin y) 35.0) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.55) + ) + (let ((v1-1 arg0)) + (set! (-> v1-1 width) (the float 265)) + ) + (let ((v1-2 arg0)) + (set! (-> v1-2 height) (the float 55)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (let ((s4-0 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id card-not-formatted-title) #f) + 1 + ) + (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 105.0) + (let ((v1-7 arg0)) + (set! (-> v1-7 width) (the float 360)) + ) + (let ((v1-8 arg0)) + (set! (-> v1-8 height) (the float 40)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id card-not-formatted-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 scale) 0.65) + ) + (set! (-> arg0 origin y) 138.0) + (let ((v1-11 arg0)) + (set! (-> v1-11 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id format?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-memcard-data-exists progress ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.65) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 55.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 365)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 75)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id save-data-already-exists) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin y) 140.0) + (let ((v1-7 arg0)) + (set! (-> v1-7 width) (the float 360)) + ) + (let ((v1-8 arg0)) + (set! (-> v1-8 height) (the float 40)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id overwrite?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-memcard-no-data progress ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.65) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 40.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 365)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 75)) + ) + (let ((s4-0 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id no-save-data) #f) + 1 + ) + (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (set! (-> arg0 origin y) 130.0) + (let ((v1-7 arg0)) + (set! (-> v1-7 width) (the float 360)) + ) + (let ((v1-8 arg0)) + (set! (-> v1-8 height) (the float 40)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id create-save-data?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-memcard-accessing progress ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 1.0) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 35.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 365)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 75)) + ) + (when + (or + (< (mod (-> *display* real-frame-counter) 300) 150) + (!= (-> obj transition-percentage-invert) 1.0) + ) + (let ((a1-1 (game-text-id loading-data))) + (case (-> obj display-state) + (((progress-screen memcard-saving)) + (set! a1-1 (game-text-id saving-data)) + ) + (((progress-screen memcard-formatting)) + (set! a1-1 (game-text-id formatting)) + ) + (((progress-screen memcard-creating)) + (set! a1-1 (game-text-id creating-save-data)) + ) + ) + (print-game-text-scaled + (lookup-text! *common-text* a1-1 #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + ) + ) + (let ((v1-18 arg0)) + (set! (-> v1-18 scale) 0.65) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 15 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 100.0) + (let ((v1-22 arg0)) + (set! (-> v1-22 width) (the float 370)) + ) + (let ((v1-23 arg0)) + (set! (-> v1-23 height) (the float 75)) + ) + (let ((s4-1 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id do-not-remove-mem-card) #f) + 1 + ) + (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + 0 + (none) + ) + +(defmethod draw-memcard-insert progress ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.65) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 35.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 310)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 110)) + ) + (let ((s4-0 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id insert-memcard) #f) + 1 + ) + (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (let ((v1-7 arg0)) + (set! (-> v1-7 scale) 0.65) + ) + (set! (-> arg0 origin y) 130.0) + (let ((v1-8 arg0)) + (set! (-> v1-8 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id back?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-memcard-file-select progress ((obj progress) (arg0 font-context)) + (local-vars + (sv-16 (function _varargs_ object)) + (sv-32 (function _varargs_ object)) + (sv-48 (function _varargs_ object)) + (sv-64 (function _varargs_ object)) + (sv-80 (function _varargs_ object)) + (sv-96 (function _varargs_ object)) + (sv-112 (function _varargs_ object)) + (sv-128 (function _varargs_ object)) + (sv-144 (function _varargs_ object)) + ) + (let ((s4-0 (* (+ (-> obj transition-offset) -256) 2))) + (if (< s4-0 0) + (set! s4-0 0) + ) + (if (< 500 s4-0) + (set! s4-0 700) + ) + (set! + (-> obj particles 19 init-pos x) + (the float (- (- 202 (adjust-pos s4-0 150)) (-> obj left-x-offset))) + ) + (set! + (-> obj particles 20 init-pos x) + (the float (- (+ (adjust-pos s4-0 100) 202) (-> obj left-x-offset))) + ) + (set! + (-> obj particles 21 init-pos x) + (the float (- (- 202 (adjust-pos s4-0 50)) (-> obj left-x-offset))) + ) + (set! + (-> obj particles 22 init-pos x) + (the float (- (+ s4-0 202) (-> obj left-x-offset))) + ) + ) + (cond + ((= (-> *setting-control* current video-mode) 'pal) + (set! (-> obj particles 21 init-pos y) 256.0) + (set! (-> obj particles 22 init-pos y) 338.0) + ) + (else + (set! (-> obj particles 21 init-pos y) 255.0) + (set! (-> obj particles 22 init-pos y) 336.0) + ) + ) + (let ((f0-13 (* 2.0 (+ -0.5 (-> obj transition-percentage-invert))))) + 128 + (if (< f0-13 0.0) + (set! f0-13 0.0) + ) + (let ((s4-1 (the int (* 128.0 f0-13)))) + (let ((v1-29 arg0)) + (set! (-> v1-29 scale) 0.5) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 102 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 5.0) + (let ((v1-33 arg0)) + (set! (-> v1-33 width) (the float 200)) + ) + (let ((v1-34 arg0)) + (set! (-> v1-34 height) (the float 20)) + ) + (print-game-text + (lookup-text! + *common-text* + (the-as + game-text-id + (if (= (-> obj display-state) (progress-screen load-game)) + 321 + 320 + ) + ) + #f + ) + arg0 + #f + s4-1 + 22 + ) + (set! (-> arg0 origin y) 26.0) + (let ((v1-37 arg0)) + (set! (-> v1-37 height) (the float 20)) + ) + (let ((s3-3 (-> obj card-info)) + (s2-0 23) + ) + (dotimes (s1-0 4) + (set! (-> arg0 origin x) (the float (- 41 (-> obj left-x-offset)))) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (let ((a0-17 arg0)) + (set! (-> a0-17 color) (font-color default)) + ) + (let ((v1-42 arg0)) + (set! (-> v1-42 width) (the float 320)) + ) + (cond + ((and + s3-3 + (= (-> s3-3 formatted) 1) + (= (-> s3-3 inited) 1) + (= (-> s3-3 file s1-0 present) 1) + ) + (set! + (-> obj particles s2-0 init-pos x) + (the float (- 66 (-> obj left-x-offset))) + ) + (let ((v1-57 arg0)) + (set! (-> v1-57 scale) 0.6) + ) + (if + (and + (< (-> s3-3 file s1-0 level-index) (length *level-task-data-remap*)) + (> (-> s3-3 file s1-0 level-index) 0) + ) + (print-game-text + (lookup-text! + *common-text* + (-> + *level-task-data* + (-> *level-task-data-remap* (+ (-> s3-3 file s1-0 level-index) -1)) + level-name-id + ) + #f + ) + arg0 + #f + s4-1 + 22 + ) + (print-game-text "OLD SAVE GAME" arg0 #f s4-1 22) + ) + (let ((a0-28 arg0)) + (set! (-> a0-28 color) (font-color blue-white)) + ) + (cond + ((or + (>= + 600 + (- + (-> *display* real-frame-counter) + (-> obj last-option-index-change) + ) + ) + (or + (< + (mod + (- + (-> *display* real-frame-counter) + (-> obj last-option-index-change) + ) + 1200 + ) + 600 + ) + (!= (-> obj option-index) s1-0) + (-> obj in-transition) + ) + ) + (let ((v1-87 arg0)) + (set! (-> v1-87 scale) 0.5) + ) + (set! (-> arg0 origin y) (+ 16.0 (-> arg0 origin y))) + (set! (-> arg0 flags) (font-flags shadow kerning middle large)) + (set! (-> arg0 origin x) (the float (- -73 (-> obj left-x-offset)))) + (let ((v1-91 arg0)) + (set! (-> v1-91 width) (the float 350)) + ) + (let ((s0-2 print-game-text)) + (set! sv-16 format) + (let ((a0-40 (clear *temp-string*)) + (a1-13 "~D") + (a2-5 (the int (-> s3-3 file s1-0 fuel-cell-count))) + ) + (sv-16 a0-40 a1-13 a2-5) + ) + (s0-2 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin x) (the float (- 1 (-> obj left-x-offset)))) + (let ((s0-3 print-game-text)) + (set! sv-32 format) + (let ((a0-44 (clear *temp-string*)) + (a1-15 "~D") + (a2-7 (the int (-> s3-3 file s1-0 money-count))) + ) + (sv-32 a0-44 a1-15 a2-7) + ) + (s0-3 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin x) (the float (- 79 (-> obj left-x-offset)))) + (let ((s0-4 print-game-text)) + (set! sv-48 format) + (let ((a0-48 (clear *temp-string*)) + (a1-17 "~D") + (a2-9 (the int (-> s3-3 file s1-0 buzzer-count))) + ) + (sv-48 a0-48 a1-17 a2-9) + ) + (s0-4 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin y) (+ 1.0 (-> arg0 origin y))) + (let ((v1-108 arg0)) + (set! (-> v1-108 scale) 1.0) + ) + (set! (-> arg0 flags) (font-flags shadow kerning right large)) + (set! (-> arg0 origin x) (the float (- 352 (-> obj left-x-offset)))) + (let ((s0-5 print-game-text)) + (set! sv-64 format) + (let ((a0-52 (clear *temp-string*)) + (a1-19 "~D%") + (a2-11 (the int (-> s3-3 file s1-0 completion-percentage))) + ) + (sv-64 a0-52 a1-19 a2-11) + ) + (s0-5 *temp-string* arg0 #f s4-1 22) + ) + (let ((v1-116 arg0)) + (set! (-> v1-116 scale) 0.5) + ) + (set! (-> arg0 origin y) (+ 9.0 (-> arg0 origin y))) + (set! (-> arg0 flags) (font-flags shadow kerning large)) + (set! (-> arg0 origin x) (the float (- 85 (-> obj left-x-offset)))) + (let ((s0-6 print-game-text)) + (set! sv-80 format) + (let ((a0-56 (clear *temp-string*)) + (a1-21 "/~D") + (a2-17 + (if (< 100 (the int (-> s3-3 file s1-0 fuel-cell-count))) + (-> obj total-nb-of-power-cells) + 100 + ) + ) + ) + (sv-80 a0-56 a1-21 a2-17) + ) + (s0-6 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin x) (the float (- 150 (-> obj left-x-offset)))) + (let ((s0-7 print-game-text)) + (set! sv-96 format) + (let ((a0-60 (clear *temp-string*)) + (a1-23 "/~D") + (a2-19 (-> obj total-nb-of-orbs)) + ) + (sv-96 a0-60 a1-23 a2-19) + ) + (s0-7 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin x) (the float (- 238 (-> obj left-x-offset)))) + (let ((s0-8 print-game-text)) + (set! sv-112 format) + (let ((a0-64 (clear *temp-string*)) + (a1-25 "/~D") + (a2-21 (-> obj total-nb-of-buzzers)) + ) + (sv-112 a0-64 a1-25 a2-21) + ) + (s0-8 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin y) (+ 15.0 (-> arg0 origin y))) + ) + (else + (set! (-> arg0 origin y) (+ 18.0 (-> arg0 origin y))) + (set! (-> arg0 origin x) (the float (- 28 (-> obj left-x-offset)))) + (let ((v1-131 arg0)) + (set! (-> v1-131 scale) 0.8) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle large)) + (let ((v1-133 arg0)) + (set! (-> v1-133 width) (the float 350)) + ) + (cond + ((= (scf-get-territory) 1) + (let ((s0-10 print-game-text)) + (set! sv-128 format) + (let ((a0-69 (clear *temp-string*)) + (a1-27 "~X/~X/20~2X ~2X:~2X") + (a2-23 (-> s3-3 file s1-0 day)) + (a3-10 (-> s3-3 file s1-0 month)) + (t0-10 (-> s3-3 file s1-0 year)) + (t1-0 (-> s3-3 file s1-0 hour)) + (t2-0 (-> s3-3 file s1-0 minute)) + ) + (sv-128 a0-69 a1-27 a2-23 a3-10 t0-10 t1-0 t2-0) + ) + (s0-10 *temp-string* arg0 #f s4-1 22) + ) + ) + (else + (let ((s0-11 print-game-text)) + (set! sv-144 format) + (let ((a0-72 (clear *temp-string*)) + (a1-29 "~X/~X/20~2X ~2X:~2X") + (a2-25 (-> s3-3 file s1-0 month)) + (a3-12 (-> s3-3 file s1-0 day)) + (t0-12 (-> s3-3 file s1-0 year)) + (t1-1 (-> s3-3 file s1-0 hour)) + (t2-1 (-> s3-3 file s1-0 minute)) + ) + (sv-144 a0-72 a1-29 a2-25 a3-12 t0-12 t1-1 t2-1) + ) + (s0-11 *temp-string* arg0 #f s4-1 22) + ) + ) + ) + (set! (-> obj particles s2-0 init-pos x) -320.0) + (set! (-> arg0 origin y) (+ 23.0 (-> arg0 origin y))) + ) + ) + ) + (else + (set! (-> obj particles s2-0 init-pos x) -320.0) + (set! (-> arg0 origin y) (+ 12.0 (-> arg0 origin y))) + (let ((v1-173 arg0)) + (set! (-> v1-173 scale) 0.7) + ) + (print-game-text + (lookup-text! *common-text* (game-text-id empty) #f) + arg0 + #f + s4-1 + 22 + ) + (set! (-> arg0 origin y) (+ 29.0 (-> arg0 origin y))) + ) + ) + (+! s2-0 1) + ) + ) + ) + ) + 0 + (none) + ) + +(defmethod + draw-memcard-auto-save-error + progress + ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.6) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 70 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 5.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 265)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 35)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id error-saving) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 34.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 360)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 50)) + ) + (let ((s4-1 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id check-memcard) #f) + 1 + ) + (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (set! (-> arg0 origin y) 89.0) + (let ((v1-12 arg0)) + (set! (-> v1-12 width) (the float 360)) + ) + (let ((v1-13 arg0)) + (set! (-> v1-13 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-disabled-title) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin y) 118.0) + (let ((v1-15 arg0)) + (set! (-> v1-15 width) (the float 360)) + ) + (let ((v1-16 arg0)) + (set! (-> v1-16 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-disabled-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-18 arg0)) + (set! (-> v1-18 scale) 0.65) + ) + (set! (-> arg0 origin y) 160.0) + (let ((v1-19 arg0)) + (set! (-> v1-19 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-memcard-removed progress ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.6) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 70 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 10.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 265)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 55)) + ) + (let ((s4-0 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id memcard-removed) #f) + 1 + ) + (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 78.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 360)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-disabled-title) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin y) 112.0) + (let ((v1-12 arg0)) + (set! (-> v1-12 width) (the float 360)) + ) + (let ((v1-13 arg0)) + (set! (-> v1-13 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-disabled-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-15 arg0)) + (set! (-> v1-15 scale) 0.65) + ) + (set! (-> arg0 origin y) 160.0) + (let ((v1-16 arg0)) + (set! (-> v1-16 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-memcard-error progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin y) 15.0) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.7) + ) + (let ((v1-1 arg0)) + (set! (-> v1-1 width) (the float 265)) + ) + (let ((v1-2 arg0)) + (set! (-> v1-2 height) (the float 55)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (let ((s4-0 (game-text-id error-loading))) + (case (-> obj display-state) + (((progress-screen memcard-error-saving)) + (set! s4-0 (game-text-id error-saving)) + ) + (((progress-screen memcard-error-formatting)) + (set! s4-0 (game-text-id error-formatting)) + ) + (((progress-screen memcard-error-creating)) + (set! s4-0 (game-text-id error-creating-data)) + ) + ) + (let ((s3-0 print-game-text-scaled)) + (format (clear *temp-string*) (lookup-text! *common-text* s4-0 #f) 1) + (s3-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 80.0) + (let ((v1-13 arg0)) + (set! (-> v1-13 width) (the float 360)) + ) + (let ((v1-14 arg0)) + (set! (-> v1-14 height) (the float 70)) + ) + (let ((s4-1 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id check-memcard-and-retry) #f) + 1 + ) + (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (let ((v1-16 arg0)) + (set! (-> v1-16 scale) 0.65) + ) + (set! (-> arg0 origin y) 155.0) + (let ((v1-17 arg0)) + (set! (-> v1-17 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-auto-save progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 35 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 18.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 330)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 60)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-warn-title) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin x) (the float (- 15 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 110.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 370)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-warn-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-12 arg0)) + (set! (-> v1-12 scale) 0.65) + ) + (set! (-> arg0 origin y) 175.0) + (let ((v1-13 arg0)) + (set! (-> v1-13 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! + (-> *progress-process* 0 particles 31 init-pos y) + (the float (if (= (get-aspect-ratio) 'aspect16x9) + 170 + 180 + ) + ) + ) + (set! + (-> *progress-process* 0 particles 31 init-pos x) + (the + float + (- + (if + (or + (< (mod (-> *display* real-frame-counter) 300) 270) + (!= (-> obj transition-percentage-invert) 1.0) + ) + 205 + -320 + ) + (-> obj left-x-offset) + ) + ) + ) + 0 + (none) + ) + +(defmethod draw-pal-change-to-60hz progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 20.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 300)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 40)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id screen-change-to-60hz) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin x) (the float (- 15 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 60.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 370)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id screen-60hz-warn-support) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin y) 120.0) + (let ((v1-12 arg0)) + (set! (-> v1-12 height) (the float 50)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id screen-60hz-warn-timer) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-14 arg0)) + (set! (-> v1-14 scale) 0.65) + ) + (set! (-> arg0 origin y) 175.0) + (let ((v1-15 arg0)) + (set! (-> v1-15 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-no-disc progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 50.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 300)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 40)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id no-disc-title) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 90.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 360)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id no-disc-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (when (is-cd-in?) + (let ((v1-13 arg0)) + (set! (-> v1-13 scale) 0.65) + ) + (set! (-> arg0 origin y) 155.0) + (let ((v1-14 arg0)) + (set! (-> v1-14 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + ) + 0 + (none) + ) + +(defmethod draw-bad-disc progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 50.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 300)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 40)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id bad-disc-title) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 90.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 360)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id bad-disc-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-12 arg0)) + (set! (-> v1-12 scale) 0.65) + ) + (set! (-> arg0 origin y) 155.0) + (let ((v1-13 arg0)) + (set! (-> v1-13 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-quit progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 70.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 300)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 40)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id quit?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-pal-now-60hz progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 45.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 300)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 50)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id screen-now-60hz) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin y) 95.0) + (let ((v1-7 arg0)) + (set! (-> v1-7 height) (the float 50)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id screen-60hz-keep?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +(defmethod draw-notice-screen progress ((obj progress)) + (hide-progress-icons) + (when *common-text* + (let + ((a1-1 + (new + 'stack + 'font-context + *font-default-matrix* + (- 70 (-> obj left-x-offset)) + 10 + 0.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (case (-> obj display-state) + (((progress-screen memcard-format)) + (draw-memcard-format obj a1-1) + ) + (((progress-screen memcard-no-space) + (progress-screen memcard-not-inserted) + (progress-screen memcard-not-formatted) + ) + (draw-memcard-storage-error obj a1-1) + ) + (((progress-screen memcard-data-exists)) + (draw-memcard-data-exists obj a1-1) + ) + (((progress-screen memcard-no-data)) + (draw-memcard-no-data obj a1-1) + ) + (((progress-screen memcard-loading) + (progress-screen memcard-saving) + (progress-screen memcard-formatting) + (progress-screen memcard-creating) + ) + (draw-memcard-accessing obj a1-1) + ) + (((progress-screen memcard-insert)) + (draw-memcard-insert obj a1-1) + ) + (((progress-screen load-game) + (progress-screen save-game) + (progress-screen save-game-title) + ) + (draw-memcard-file-select obj a1-1) + ) + (((progress-screen memcard-auto-save-error)) + (draw-memcard-auto-save-error obj a1-1) + ) + (((progress-screen memcard-removed)) + (draw-memcard-removed obj a1-1) + ) + (((progress-screen memcard-error-loading) + (progress-screen memcard-error-saving) + (progress-screen memcard-error-formatting) + (progress-screen memcard-error-creating) + ) + (draw-memcard-error obj a1-1) + ) + (((progress-screen auto-save)) + (draw-auto-save obj a1-1) + ) + (((progress-screen pal-change-to-60hz)) + (draw-pal-change-to-60hz obj a1-1) + ) + (((progress-screen pal-now-60hz)) + (draw-pal-now-60hz obj a1-1) + ) + (((progress-screen no-disc)) + (draw-no-disc obj a1-1) + ) + (((progress-screen bad-disc)) + (draw-bad-disc obj a1-1) + ) + (((progress-screen quit)) + (draw-quit obj a1-1) + ) + ) + ) + ) + 0 + (none) + ) + +(defun draw-percent-bar ((arg0 int) (arg1 int) (arg2 float) (arg3 int)) + (let* ((s2-0 (-> *display* frames (-> *display* on-screen) frame global-buf)) + (gp-0 (-> s2-0 base)) + ) + (draw-sprite2d-xy s2-0 arg0 arg1 255 14 (new 'static 'rgba :a #x60)) + (draw-sprite2d-xy + s2-0 + arg0 + (+ arg1 2) + (the int (* 255.0 arg2)) + 10 + (the-as rgba arg3) + ) + (let ((a3-3 (-> s2-0 base))) + (let ((v1-3 (the-as dma-packet (-> s2-0 base)))) + (set! (-> v1-3 dma) (new 'static 'dma-tag :id (dma-tag-id next))) + (set! (-> v1-3 vif0) (new 'static 'vif-tag)) + (set! (-> v1-3 vif1) (new 'static 'vif-tag)) + (set! (-> s2-0 base) (&+ (the-as pointer v1-3) 16)) + ) + (dma-bucket-insert-tag + (-> *display* frames (-> *display* on-screen) frame bucket-group) + (bucket-id sprite) + gp-0 + (the-as (pointer dma-tag) a3-3) + ) + ) + ) + 0 + (none) + ) + +(defun + print-language-name + ((arg0 int) (arg1 font-context) (arg2 int) (arg3 symbol)) + (let ((s5-0 (if arg3 + arg2 + (- arg2) + ) + ) + ) + (+! (-> arg1 origin x) (the float s5-0)) + (let ((f30-0 (- 1.0 (* 0.0033333334 (the float arg2))))) + (print-game-text-scaled + (lookup-text! *common-text* (-> *language-name-remap* arg0) #f) + f30-0 + arg1 + (the int (* 128.0 f30-0)) + ) + ) + (set! (-> arg1 origin x) (- (-> arg1 origin x) (the float s5-0))) + ) + (set! (-> arg1 color) (font-color default)) + arg1 + ) + +(defmethod + draw-options + progress + ((obj progress) (arg0 int) (arg1 int) (arg2 float)) + (local-vars + (sv-112 font-context) + (sv-128 int) + (sv-144 int) + (sv-160 (function _varargs_ object)) + (sv-176 string) + (sv-192 string) + (sv-208 string) + (sv-224 (function _varargs_ object)) + (sv-240 string) + (sv-256 string) + (sv-272 string) + (sv-288 (function string font-context symbol int int float)) + (sv-304 (function _varargs_ object)) + (sv-320 (function _varargs_ object)) + (sv-336 string) + (sv-352 string) + (sv-368 string) + (sv-384 (function _varargs_ object)) + (sv-400 string) + (sv-416 string) + (sv-432 string) + (sv-448 uint) + (sv-464 int) + (sv-480 int) + (sv-496 int) + (sv-512 uint) + (sv-528 (function _varargs_ object)) + (sv-544 string) + (sv-560 string) + (sv-576 string) + (sv-592 (function _varargs_ object)) + (sv-608 string) + (sv-624 string) + (sv-640 string) + (sv-656 (function _varargs_ object)) + (sv-672 string) + (sv-688 string) + (sv-704 string) + (sv-720 (function _varargs_ object)) + (sv-736 string) + (sv-752 string) + (sv-768 string) + (sv-784 (function _varargs_ object)) + (sv-800 string) + (sv-816 string) + (sv-832 string) + (sv-848 (function _varargs_ object)) + (sv-864 string) + (sv-880 string) + (sv-896 string) + (sv-912 string) + ) + (let ((s3-0 (-> *options-remap* (-> obj display-state)))) + (when s3-0 + (let ((s2-1 (- arg0 (/ (* arg1 (length s3-0)) 2))) + (s1-0 0) + ) + 27 + 0 + (set! + sv-112 + (new + 'stack + 'font-context + *font-default-matrix* + 0 + 0 + 0.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + (let ((v1-11 sv-112)) + (set! (-> v1-11 width) (the float 350)) + ) + (let ((v1-12 sv-112)) + (set! (-> v1-12 height) (the float 25)) + ) + (set! (-> sv-112 flags) (font-flags shadow kerning middle left large)) + (dotimes (s0-0 (length s3-0)) + (set! sv-912 (the-as string #f)) + (set! sv-128 27) + (set! sv-144 s2-1) + (let ((v1-18 (-> s3-0 s0-0 option-type))) + (cond + ((= v1-18 7) + (cond + ((-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) + (set! sv-160 format) + (set! sv-176 (clear *temp-string*)) + (set! sv-192 "~30L~S~0L ~S") + (set! sv-208 (lookup-text! *common-text* (game-text-id yes) #f)) + (let ((a3-2 (lookup-text! *common-text* (game-text-id no) #f))) + (sv-160 sv-176 sv-192 sv-208 a3-2) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + (else + (set! sv-224 format) + (set! sv-240 (clear *temp-string*)) + (set! sv-256 "~0L~S ~30L~S~1L") + (set! sv-272 (lookup-text! *common-text* (game-text-id yes) #f)) + (let ((a3-3 (lookup-text! *common-text* (game-text-id no) #f))) + (sv-224 sv-240 sv-256 sv-272 a3-3) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ) + ) + ((or (= v1-18 6) (= v1-18 8)) + (cond + ((nonzero? (-> s3-0 s0-0 name)) + (set! sv-912 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f)) + sv-912 + ) + (else + (set! sv-912 (the-as string #f)) + (the-as symbol sv-912) + ) + ) + ) + ((and (-> obj selected-option) (= (-> obj option-index) s0-0)) + (let ((a0-19 sv-112)) + (set! (-> a0-19 color) (font-color default)) + ) + (set! + (-> sv-112 origin x) + (the float (- sv-128 (-> obj left-x-offset))) + ) + (case (-> s3-0 s0-0 option-type) + ((3) + (set! (-> sv-112 origin y) (the float (+ s2-1 -20))) + ) + (else + (set! (-> sv-112 origin y) (the float (+ s2-1 -8))) + ) + ) + (let ((v1-64 sv-112)) + (set! (-> v1-64 scale) 0.6) + ) + (set! sv-288 print-game-text) + (let ((a0-23 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f)) + (a1-11 sv-112) + (a2-10 #f) + (a3-4 128) + (t0-1 22) + ) + (sv-288 a0-23 a1-11 a2-10 a3-4 t0-1) + ) + (case (-> s3-0 s0-0 option-type) + ((3) + (set! sv-144 (+ s2-1 3)) + sv-144 + ) + (else + (set! sv-144 (+ s2-1 7)) + sv-144 + ) + ) + (let ((v1-81 (-> s3-0 s0-0 option-type))) + (cond + ((zero? v1-81) + (let* ((v1-82 (the-as uint #x8000ffff)) + (f0-12 + (* + 0.01 + (-> + (the-as (pointer float) (-> s3-0 s0-0 value-to-modify)) + ) + ) + ) + (a0-34 + (logior + (logand v1-82 -256) + (shr (shl (the int (+ 64.0 (* 191.0 f0-12))) 56) 56) + ) + ) + (a3-5 + (logior + (logand a0-34 -65281) + (shr (shl (shr (shl a0-34 56) 56) 56) 48) + ) + ) + ) + (draw-percent-bar + (- 75 (-> obj left-x-offset)) + (+ s2-1 8) + f0-12 + (the-as int a3-5) + ) + ) + (set! sv-304 format) + (let ((a0-42 (clear *temp-string*)) + (a1-13 "~D") + (a2-12 + (the + int + (-> (the-as (pointer float) (-> s3-0 s0-0 value-to-modify))) + ) + ) + ) + (sv-304 a0-42 a1-13 a2-12) + ) + (set! sv-912 *temp-string*) + (set! + sv-128 + (+ + (the + int + (* + 2.5 + (-> (the-as (pointer float) (-> s3-0 s0-0 value-to-modify))) + ) + ) + -100 + ) + ) + sv-128 + ) + ((= v1-81 2) + (cond + ((-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) + (set! sv-320 format) + (set! sv-336 (clear *temp-string*)) + (set! sv-352 "~30L~S~0L ~S") + (set! sv-368 (lookup-text! *common-text* (game-text-id on) #f)) + (let ((a3-6 (lookup-text! *common-text* (game-text-id off) #f))) + (sv-320 sv-336 sv-352 sv-368 a3-6) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + (else + (set! sv-384 format) + (set! sv-400 (clear *temp-string*)) + (set! sv-416 "~0L~S ~30L~S~1L") + (set! sv-432 (lookup-text! *common-text* (game-text-id on) #f)) + (let ((a3-7 (lookup-text! *common-text* (game-text-id off) #f))) + (sv-384 sv-400 sv-416 sv-432 a3-7) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ) + ) + ((= v1-81 1) + (set! sv-512 (-> obj language-selection)) + (set! + sv-448 + (-> (the-as (pointer uint64) (-> s3-0 s0-0 value-to-modify))) + ) + (if + (and + (zero? (scf-get-territory)) + (not + (and + (= *progress-cheat* 'language) + (logtest? + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons l2) + ) + (logtest? + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons r2) + ) + ) + ) + ) + (set! sv-464 5) + (set! sv-464 6) + ) + (if (-> obj language-transition) + (set! + (-> obj language-x-offset) + (seekl + (-> obj language-x-offset) + 200 + (the int (* 10.0 (-> *display* time-adjust-ratio))) + ) + ) + ) + (when (>= (-> obj language-x-offset) 100) + (set! (-> obj language-selection) sv-448) + (set! sv-512 sv-448) + (set! (-> obj language-transition) #f) + (set! (-> obj language-x-offset) 0) + 0 + ) + (set! (-> sv-112 origin y) (the float (+ s2-1 3))) + (let ((a0-62 sv-112)) + (set! (-> a0-62 color) (font-color lighter-lighter-blue)) + ) + 0 + (set! sv-480 (mod (the-as int (+ sv-512 1)) sv-464)) + (let ((a0-66 (mod (+ sv-464 -1 sv-512) sv-464)) + (v1-153 (mod (the-as int (+ sv-512 2)) sv-464)) + ) + (set! sv-496 (mod (+ sv-464 -2 sv-512) sv-464)) + (cond + ((-> obj language-direction) + (let ((a2-22 (- 200 (+ (-> obj language-x-offset) 100)))) + (print-language-name a0-66 sv-112 a2-22 #f) + ) + (let ((a2-23 (+ (-> obj language-x-offset) 100))) + (cond + ((< a2-23 150) + (let ((t9-27 print-language-name) + (a1-30 sv-112) + (a3-9 #t) + ) + (t9-27 sv-480 a1-30 a2-23 a3-9) + ) + ) + (else + (let ((a2-24 (- 200 (-> obj language-x-offset))) + (t9-28 print-language-name) + (a1-31 sv-112) + (a3-10 #f) + ) + (t9-28 sv-496 a1-31 a2-24 a3-10) + ) + ) + ) + ) + ) + (else + (let ((a2-25 (+ (-> obj language-x-offset) 100))) + (cond + ((< a2-25 150) + (print-language-name a0-66 sv-112 a2-25 #f) + ) + (else + (let ((a2-26 (- 200 (-> obj language-x-offset)))) + (print-language-name v1-153 sv-112 a2-26 #t) + ) + ) + ) + ) + (let ((a2-27 (- 200 (+ (-> obj language-x-offset) 100)))) + (print-language-name sv-480 sv-112 a2-27 #t) + ) + ) + ) + ) + (when (not (-> obj language-transition)) + (let ((a0-75 sv-112)) + (set! (-> a0-75 color) (font-color yellow-green-2)) + ) + ) + (let ((t9-32 print-language-name) + (a1-37 sv-112) + (a2-28 (-> obj language-x-offset)) + (a3-14 (-> obj language-direction)) + ) + (t9-32 (the-as int sv-512) a1-37 a2-28 (the-as symbol a3-14)) + ) + ) + ((= v1-81 3) + (set! + sv-912 + (lookup-text! *common-text* (game-text-id move-dpad) #f) + ) + sv-912 + ) + ((= v1-81 4) + (cond + ((= + (-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) + 'aspect4x3 + ) + (set! sv-528 format) + (set! sv-544 (clear *temp-string*)) + (set! sv-560 "~30L~S~0L ~S") + (set! sv-576 (lookup-text! *common-text* (game-text-id 4x3) #f)) + (let ((a3-15 (lookup-text! *common-text* (game-text-id 16x9) #f))) + (sv-528 sv-544 sv-560 sv-576 a3-15) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + (else + (set! sv-592 format) + (set! sv-608 (clear *temp-string*)) + (set! sv-624 "~0L~S ~30L~S~1L") + (set! sv-640 (lookup-text! *common-text* (game-text-id 4x3) #f)) + (let ((a3-16 (lookup-text! *common-text* (game-text-id 16x9) #f))) + (sv-592 sv-608 sv-624 sv-640 a3-16) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ) + ) + ((= v1-81 5) + (cond + ((= + (-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) + 'ntsc + ) + (set! sv-656 format) + (set! sv-672 (clear *temp-string*)) + (set! sv-688 "~0L~S ~30L~S~1L") + (set! sv-704 (lookup-text! *common-text* (game-text-id 50hz) #f)) + (let ((a3-17 (lookup-text! *common-text* (game-text-id 60hz) #f))) + (sv-656 sv-672 sv-688 sv-704 a3-17) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + (else + (set! sv-720 format) + (set! sv-736 (clear *temp-string*)) + (set! sv-752 "~30L~S~0L ~S") + (set! sv-768 (lookup-text! *common-text* (game-text-id 50hz) #f)) + (let ((a3-18 (lookup-text! *common-text* (game-text-id 60hz) #f))) + (sv-720 sv-736 sv-752 sv-768 a3-18) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ) + ) + ) + ) + ) + (else + (let ((v1-195 (-> s3-0 s0-0 option-type))) + (cond + ((or (zero? v1-195) (= v1-195 3) (= v1-195 4) (= v1-195 5)) + (set! sv-912 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f)) + sv-912 + ) + ((= v1-195 2) + (set! sv-784 format) + (set! sv-800 (clear *temp-string*)) + (set! sv-816 "~S: ~S") + (set! sv-832 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f)) + (let + ((a3-19 + (if (-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) + (lookup-text! *common-text* (game-text-id on) #f) + (lookup-text! *common-text* (game-text-id off) #f) + ) + ) + ) + (sv-784 sv-800 sv-816 sv-832 a3-19) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ((= v1-195 1) + (set! sv-848 format) + (set! sv-864 (clear *temp-string*)) + (set! sv-880 "~S: ~S") + (set! sv-896 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f)) + (let + ((a3-20 + (lookup-text! + *common-text* + (-> + *language-name-remap* + (-> (the-as (pointer uint64) (-> s3-0 s0-0 value-to-modify))) + ) + #f + ) + ) + ) + (sv-848 sv-864 sv-880 sv-896 a3-20) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ) + ) + ) + ) + ) + (when sv-912 + (let ((f0-23 (-> obj transition-percentage-invert))) + (let ((v1-235 sv-112)) + (set! + (-> v1-235 color) + (the-as + font-color + (if (and (= s0-0 (-> obj option-index)) (not (-> obj in-transition))) + 30 + 0 + ) + ) + ) + ) + (set! + (-> sv-112 origin x) + (the float (- sv-128 (-> obj left-x-offset))) + ) + (set! + (-> sv-112 origin y) + (the float (the int (* (the float sv-144) (if (-> s3-0 s0-0 scale) + f0-23 + 1.0 + ) + ) + ) + ) + ) + (let ((v1-246 sv-112)) + (set! (-> v1-246 scale) (* arg2 f0-23)) + ) + (let ((t9-60 print-game-text) + (a1-64 sv-112) + (a2-50 #f) + (a3-21 (the int (* 128.0 f0-23))) + (t0-2 22) + ) + (t9-60 sv-912 a1-64 a2-50 a3-21 t0-2) + ) + ) + ) + (+! s2-1 arg1) + (+! s1-0 1) + ) + ) + ) + ) + 0 + (none) + ) + +(defmethod draw-progress progress ((obj progress)) + (let + ((f30-0 (+ -409.0 (-> obj particles 2 init-pos x) (* 0.8 (the float (-> obj left-x-offset))))) + (s5-0 (if (or (-> obj stat-transition) (nonzero? (-> obj level-transition))) + 0 + (-> obj transition-offset) + ) + ) + ) + (let + ((f28-0 + (if (or (-> obj stat-transition) (nonzero? (-> obj level-transition))) + 1.0 + (-> obj transition-percentage-invert) + ) + ) + ) + (with-dma-buffer-add-bucket ((s3-0 (-> (current-frame) global-buf)) + (bucket-id debug-draw0)) + (draw-string-xy (string-format "~D" (the int (+ 0.5 (-> *target* game money)))) s3-0 + (the int (+ 428.0 (the float s5-0) f30-0)) (- 12 (the int (* 0.16666667 f30-0))) + (font-color default) (font-flags shadow kerning large)) + (let ((s2-1 draw-string-xy)) + (format + (clear *temp-string*) + "~D" + (the int (+ 0.5 (-> *target* game fuel))) + ) + (s2-1 + *temp-string* + s3-0 + (the int (+ 456.0 (the float (adjust-pos s5-0 50)) f30-0)) + (- 48 (the int (* 0.125 f30-0))) + (font-color default) + (font-flags shadow kerning large) + ) + ) + (let ((s2-2 draw-string-xy)) + (format + (clear *temp-string*) + "~D" + (the int (+ 0.5 (-> *target* fact-info-target buzzer))) + ) + (s2-2 + *temp-string* + s3-0 + (the int (+ 469.0 (the float (adjust-pos s5-0 100)) f30-0)) + 89 + (font-color default) + (font-flags shadow kerning large) + ) + ) + ) + (let + ((s4-2 + (new + 'stack + 'font-context + *font-default-matrix* + (the + int + (+ + (- 423.0 (the float (/ (-> obj left-x-offset) 2))) + f30-0 + (the float (adjust-pos s5-0 150)) + ) + ) + 131 + 0.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-29 s4-2)) + (set! (-> v1-29 width) (the float 100)) + ) + (let ((v1-30 s4-2)) + (set! (-> v1-30 height) (the float 15)) + ) + (let ((v1-31 s4-2)) + (set! (-> v1-31 scale) 0.5) + ) + (set! (-> s4-2 flags) (font-flags shadow kerning large)) + (print-game-text + (lookup-text! *common-text* (game-text-id options) #f) + s4-2 + #f + 128 + 22 + ) + (let ((v1-34 s4-2)) + (set! (-> v1-34 width) (the float 160)) + ) + (let ((v1-35 s4-2)) + (set! (-> v1-35 height) (the float 22)) + ) + (let ((v1-36 s4-2)) + (set! (-> v1-36 scale) 1.3) + ) + (let ((a0-31 s4-2)) + (set! (-> a0-31 color) (font-color another-light-blue)) + ) + (set! + (-> s4-2 origin x) + (+ + (- + 435.0 + (the float (if (< (-> *progress-process* 0 completion-percentage) 10.0) + 93 + 80 + ) + ) + ) + f30-0 + ) + ) + (set! (-> s4-2 origin y) 180.0) + (set! (-> s4-2 flags) (font-flags shadow kerning middle left large)) + (let ((s3-3 print-game-text)) + (format + (clear *temp-string*) + "~2D%" + (the int (-> *progress-process* 0 completion-percentage)) + ) + (s3-3 *temp-string* s4-2 #f (the int (* 128.0 f28-0)) 22) + ) + ) + ) + 0.0 + (let ((f28-1 (+ -94.0 (-> obj particles 2 init-pos x))) + (s3-4 90) + (s4-3 224) + (s2-5 (/ s5-0 5)) + (f26-3 (-> obj button-scale)) + ) + (let ((f24-0 (* 182.04445 (- (/ -36.0 f26-3) (the float s2-5))))) + (set! + (-> obj particles 27 init-pos x) + (the float (+ s3-4 (the int (* f28-1 (cos f24-0))))) + ) + (set! + (-> obj particles 27 init-pos y) + (the float (+ s4-3 (the int (* f28-1 (sin f24-0))))) + ) + ) + (let + ((f24-2 (* 182.04445 (- (/ -21.0 f26-3) (the float (adjust-pos s2-5 10))))) + ) + (set! + (-> obj particles 28 init-pos x) + (the float (+ s3-4 (the int (* f28-1 (cos f24-2))))) + ) + (set! + (-> obj particles 28 init-pos y) + (the float (+ s4-3 (the int (* f28-1 (sin f24-2))))) + ) + ) + (let + ((f24-4 (* 182.04445 (- (/ -6.0 f26-3) (the float (adjust-pos s2-5 15)))))) + (set! + (-> obj particles 29 init-pos x) + (the float (+ s3-4 (the int (* f28-1 (cos f24-4))))) + ) + (set! + (-> obj particles 29 init-pos y) + (the float (+ s4-3 (the int (* f28-1 (sin f24-4))))) + ) + ) + (let + ((f26-5 (* 182.04445 (- (/ 9.0 f26-3) (the float (adjust-pos s2-5 20)))))) + (set! + (-> obj particles 30 init-pos x) + (the float (+ s3-4 (the int (* f28-1 (cos f26-5))))) + ) + (set! + (-> obj particles 30 init-pos y) + (the float (+ s4-3 (the int (* f28-1 (sin f26-5))))) + ) + ) + ) + (when *cheat-mode* + (let ((a0-46 "AUTO SAVE OFF")) + (if (-> *setting-control* current auto-save) + (set! a0-46 "AUTO SAVE ON") + ) + (let* + ((s3-5 (-> *display* frames (-> *display* on-screen) frame global-buf)) + (s4-4 (-> s3-5 base)) + ) + (draw-string-xy + a0-46 + s3-5 + (the int (+ 430.0 f30-0)) + 200 + (font-color blue-white) + (font-flags shadow kerning middle) + ) + (let ((a3-9 (-> s3-5 base))) + (let ((v1-81 (the-as object (-> s3-5 base)))) + (set! + (-> (the-as dma-packet v1-81) dma) + (new 'static 'dma-tag :id (dma-tag-id next)) + ) + (set! (-> (the-as dma-packet v1-81) vif0) (new 'static 'vif-tag)) + (set! (-> (the-as dma-packet v1-81) vif1) (new 'static 'vif-tag)) + (set! (-> s3-5 base) (&+ (the-as pointer v1-81) 16)) + ) + (dma-bucket-insert-tag + (-> *display* frames (-> *display* on-screen) frame bucket-group) + (bucket-id debug-draw0) + s4-4 + (the-as (pointer dma-tag) a3-9) + ) + ) + ) + ) + ) + (let ((a0-52 (-> obj icons 5 icon 0 root))) + (set-yaw-angle-clear-roll-pitch! + a0-52 + (- (y-angle a0-52) (* 182.04445 (* 4.0 (-> *display* time-adjust-ratio)))) + ) + ) + (let* + ((f28-2 + (* 0.00024414062 (the float (-> *progress-process* 0 in-out-position))) + ) + (f30-1 (* 300.0 f28-2)) + ) + (set! + (-> obj particles 18 init-pos x) + (the + float + (+ + (the int (the float (adjust-pos s5-0 50))) + 394 + (the int f30-1) + (-> obj right-x-offset) + ) + ) + ) + (set! + (-> obj particles 18 init-pos y) + (the float (- 40 (the int (* 80.0 f28-2)))) + ) + (set! + (-> obj icons 5 icon-x) + (+ + (the int (the float (adjust-pos s5-0 50))) + 393 + (the int f30-1) + (-> obj right-x-offset) + ) + ) + (set! + (-> obj icons 5 icon-y) + (- (-> obj small-orb-y-offset) (the int (* 80.0 f28-2))) + ) + (set! + (-> obj particles 16 init-pos x) + (the + float + (+ + (the int (the float (adjust-pos s5-0 100))) + 425 + (the int f30-1) + (-> obj right-x-offset) + ) + ) + ) + (set! + (-> obj particles 16 init-pos y) + (the float (- 112 (the int (* 60.0 f28-2)))) + ) + (set! + (-> obj particles 17 init-pos x) + (the + float + (+ + (the int (the float (adjust-pos s5-0 150))) + 442 + (the int f30-1) + (the int (* 0.7 (the float (-> obj right-x-offset)))) + ) + ) + ) + ) + ) + (set! (-> obj particles 17 init-pos y) 193.0) + (none) + ) + + diff --git a/goal_src/engine/ui/progress/progress-part.gc b/goal_src/engine/ui/progress/progress-part.gc index 15d63c791f..47895b193c 100644 --- a/goal_src/engine/ui/progress/progress-part.gc +++ b/goal_src/engine/ui/progress/progress-part.gc @@ -5,3 +5,3659 @@ ;; name in dgo: progress-part ;; dgos: GAME, ENGINE + +(defun + part-progress-hud-left-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (let ((v1-0 *progress-process*)) + (set! (-> arg2 vector 0 w) (-> v1-0 0 left-side-x-scale)) + (set! (-> arg2 vector 1 w) (-> v1-0 0 left-side-y-scale)) + ) + (none) + ) + +;; definition for function part-progress-hud-right-func +;; INFO: Return type mismatch float vs none. +(defun + part-progress-hud-right-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (let ((v1-0 *progress-process*)) + (set! (-> arg2 vector 0 w) (-> v1-0 0 right-side-x-scale)) + (set! (-> arg2 vector 1 w) (-> v1-0 0 right-side-y-scale)) + ) + (none) + ) + +;; definition for function part-progress-hud-orb-func +;; INFO: Return type mismatch float vs none. +(defun + part-progress-hud-orb-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 0 w) (/ 5324.8 (-> *progress-process* 0 sides-x-scale))) + (set! (-> arg2 vector 1 w) (/ 5324.8 (-> *progress-process* 0 sides-x-scale))) + (none) + ) + +;; definition for function part-progress-hud-buzzer-func +;; INFO: Return type mismatch float vs none. +(defun + part-progress-hud-buzzer-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 0 w) (/ 6144.0 (-> *progress-process* 0 sides-x-scale))) + (set! (-> arg2 vector 1 w) (/ 6144.0 (-> *progress-process* 0 sides-x-scale))) + (none) + ) + +;; definition for function part-progress-hud-button-func +;; INFO: Return type mismatch float vs none. +(defun + part-progress-hud-button-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 0 w) (/ 6553.6 (-> *progress-process* 0 sides-x-scale))) + (set! (-> arg2 vector 1 w) (/ 6553.6 (-> *progress-process* 0 sides-x-scale))) + (none) + ) + +;; definition for function part-progress-hud-tint-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-hud-tint-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! + (-> arg2 vector 2 w) + (the float (- 64 (sar (* 63 (-> *progress-process* 0 in-out-position)) 12))) + ) + 0 + (none) + ) + +;; definition for function part-progress-card-slot-01-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-card-slot-01-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 2 w) (if (zero? (-> *progress-process* 0 option-index)) + 64.0 + 32.0 + ) + ) + (set! (-> arg2 vector 1 w) (-> *progress-process* 0 slot-scale)) + 0 + (none) + ) + +;; definition for function part-progress-card-slot-02-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-card-slot-02-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 2 w) (if (= (-> *progress-process* 0 option-index) 1) + 64.0 + 32.0 + ) + ) + (set! (-> arg2 vector 1 w) (-> *progress-process* 0 slot-scale)) + 0 + (none) + ) + +;; definition for function part-progress-card-slot-03-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-card-slot-03-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 2 w) (if (= (-> *progress-process* 0 option-index) 2) + 64.0 + 32.0 + ) + ) + (set! (-> arg2 vector 1 w) (-> *progress-process* 0 slot-scale)) + 0 + (none) + ) + +;; definition for function part-progress-card-slot-04-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-card-slot-04-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 2 w) (if (= (-> *progress-process* 0 option-index) 3) + 64.0 + 32.0 + ) + ) + (set! (-> arg2 vector 1 w) (-> *progress-process* 0 slot-scale)) + 0 + (none) + ) + +;; definition for function part-progress-card-cell-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-card-cell-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (let + ((f0-1 + (* 2.0 (+ -0.5 (-> *progress-process* 0 transition-percentage-invert))) + ) + ) + (if (< f0-1 0.0) + (set! f0-1 0.0) + ) + (set! (-> arg2 vector 2 w) (* 128.0 f0-1)) + ) + 0 + (none) + ) + +;; definition for function part-progress-save-icon-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-save-icon-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (let + ((f0-1 (* 6144.0 (-> *progress-process* 0 transition-percentage-invert)))) + (set! (-> arg2 vector 0 w) f0-1) + (set! (-> arg2 vector 1 w) f0-1) + ) + 0 + (none) + ) + +;; definition for function fuel-cell-progress-hud-orbit-callback +;; INFO: Return type mismatch int vs none. +(defun + fuel-cell-progress-hud-orbit-callback + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (let* ((a0-1 (-> arg1 key)) + (s5-0 (the-as progress (-> a0-1 proc))) + (v1-0 (the int (the-as float (-> arg1 user-float)))) + (s4-0 -1) + ) + (let ((a1-1 0)) + (dotimes (a2-1 (-> *progress-process* 0 nb-of-particles)) + (if (= (-> a0-1 matrix) (-> s5-0 particles a1-1 part matrix)) + (set! s4-0 a1-1) + ) + (+! a1-1 1) + ) + ) + (cond + ((= v1-0 3) + (if (= (-> s5-0 particle-state s4-0) 1) + (set! (-> arg2 vector 2 w) 42.0) + (set! (-> arg2 vector 2 w) 128.0) + ) + 0 + ) + (else + (let ((s3-0 (new 'stack-no-clear 'vector)) + (s2-0 (new 'stack-no-clear 'vector)) + ) + (cond + ((or + (= s4-0 -1) + (= (-> s5-0 particle-state s4-0) 2) + (= (-> s5-0 particle-state s4-0) 1) + ) + (set! (-> arg2 vector 0 x) 245760.0) + ) + ((= v1-0 -1) + (set! (-> arg2 vector 0 x) 0.0) + (set! (-> arg2 vector 0 y) 0.0) + ) + (else + (vector<-cspace! + s3-0 + (-> s5-0 icons (logand s4-0 3) icon 0 node-list data v1-0) + ) + (vector<-cspace! + s2-0 + (-> s5-0 icons (logand s4-0 3) icon 0 node-list data 3) + ) + (vector-! s3-0 s3-0 s2-0) + (set! (-> arg2 vector 0 x) (* 48.0 (-> s3-0 x))) + (set! (-> arg2 vector 0 y) (* 60.0 (-> s3-0 y))) + (set! (-> arg2 vector 0 z) (* 32.0 (-> s3-0 z))) + ) + ) + ) + 0 + ) + ) + ) + 0 + (none) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 85) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x5 + :name "group-part-progress-hud-previous" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x14c :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 86) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x5 + :name "group-part-progress-hud-next" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x14d :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 87) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-hud-selector" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x14e :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 88) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-hud-left" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x14f :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 89) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-hud-right" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x150 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 90) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-hud-tint" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x151 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 91) + (new 'static 'sparticle-launch-group + :length 3 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-card-cell" + :launcher + (new 'static 'inline-array sparticle-group-item 3 + (new 'static 'sparticle-group-item :launcher #x88e :flags #x8) + (new 'static 'sparticle-group-item :launcher #x88f :flags #x8) + (new 'static 'sparticle-group-item :launcher #x890 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 570) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-button-x" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x920 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 571) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-button-square" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x921 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 572) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-button-triangle" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x922 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 573) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-button-circle" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x923 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 92) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-card-slot-01" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x85e :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 93) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-card-slot-02" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x85f :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 94) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-card-slot-03" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x860 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 95) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-card-slot-04" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x861 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 96) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name + "group-part-progress-hud-power-cell-center" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x152 :flags #x8) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 337) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 61440.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 47104.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 32.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-tint-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2190) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 0.0000000000000000000015910302 + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 3276.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-cell-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2191) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 0.0000000000000000000015910044 + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xa + :flags #x1 + :initial-valuef 4300.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 3276.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-cell-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2192) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 0.0000000000000000000015909785 + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xa + :flags #x1 + :initial-valuef 9420.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 3276.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-cell-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2336) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0006104) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 6553.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-button-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2337) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0007324) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 6553.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-button-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2338) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0008545) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 6553.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-button-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2339) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0009766) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 6553.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-button-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2142) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 37683.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x13 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-slot-01-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2143) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 37683.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x13 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-slot-02-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2144) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 37683.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x13 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-slot-03-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2145) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 37683.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x13 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-slot-04-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 332) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.000244) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 4915.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 333) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.000122) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 4915.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 334) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0004883) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 7372.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 335) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 14336.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 53248.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-left-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 336) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.000366) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 24576.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 53248.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-right-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 339) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203100) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 1228.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 4.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 340) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203100) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 1228.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 5.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 341) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203100) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 1228.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 6.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 342) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203100) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 1228.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 7.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 343) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203100) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 819.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 9.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 338) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203000) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 4915.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 3.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 344) + (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-valuef -0.53333336 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 345) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 22 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200200) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 0.5 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 2160.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 1024.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xe + :initial-valuef (the-as float #x4) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x10 + :flags #x1 + :random-rangef 65536.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 286.72 + :random-rangef 1884.16 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x1c + :flags #x1 + :initial-valuef 40.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x1f + :flags #x1 + :initial-valuef -27.306667 + :random-rangef 54.613335 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x20 + :flags #x1 + :initial-valuef 40.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x24 + :flags #x1 + :initial-valuef 0.35555556 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x220c) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef -1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec + :field #x32 + :initial-valuef (the-as float #x5a) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #xe8) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 346) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 21 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200200) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 0.06 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 2160.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 4096.0 + :random-rangef 1024.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xe + :initial-valuef (the-as float #x4) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x10 + :flags #x1 + :random-rangef 65536.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 409.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x1c + :flags #x1 + :initial-valuef 40.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x1f + :flags #x1 + :initial-valuef -27.306667 + :random-rangef 54.613335 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x24 + :flags #x1 + :initial-valuef 0.32 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x220c) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef -1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec + :field #x32 + :initial-valuef (the-as float #x4b) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #xe8) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 347) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 16 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 2160.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x10 + :flags #x1 + :random-rangef 65536.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 7372.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :random-rangef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x1f + :flags #x1 + :initial-valuef -72.81778 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x220c) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef -1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 348) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 16 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 2160.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 9830.4 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x10 + :flags #x1 + :random-rangef 65536.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x1f + :flags #x1 + :initial-valuef 54.613335 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x220c) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef -1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 97) + (new 'static 'sparticle-launch-group + :length 8 + :duration #xbb8 + :linger-duration #x5dc + :flags #x5 + :name + "group-part-progress-hud-power-cell-whole" + :launcher + (new 'static 'inline-array sparticle-group-item 8 + (new 'static 'sparticle-group-item :launcher #x152 :flags #x8) + (new 'static 'sparticle-group-item + :launcher #x15b + :flags #x8 + :period #xe10 + :length #x5 + ) + (new 'static 'sparticle-group-item + :launcher #x15c + :flags #x8 + :period #xe10 + :length #x5 + ) + (new 'static 'sparticle-group-item :launcher #x157 :flags #x8) + (new 'static 'sparticle-group-item :launcher #x153 :flags #x8) + (new 'static 'sparticle-group-item :launcher #x154 :flags #x8) + (new 'static 'sparticle-group-item :launcher #x155 :flags #x8) + (new 'static 'sparticle-group-item :launcher #x156 :flags #x8) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 98) + (new 'static 'sparticle-launch-group + :length 2 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-buzzer" + :launcher + (new 'static 'inline-array sparticle-group-item 2 + (new 'static 'sparticle-group-item + :launcher #x7be + :flags #x8 + :binding #x7bd + ) + (new 'static 'sparticle-group-item :launcher #x7bd :flags #xc) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1982) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202a00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 9011.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1981) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 17 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202a00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #xa :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #xb + :flags #x1 + :initial-valuef 5461.3335 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 409.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x18 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x19 + :flags #x1 + :initial-valuef 218.45334 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x1b :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2284) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 99) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-orb" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x7bf :flags #x8) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1983) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202c00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 9011.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 100) + (new 'static 'sparticle-launch-group + :length 2 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-buzzer-small" + :launcher + (new 'static 'inline-array sparticle-group-item 2 + (new 'static 'sparticle-group-item + :launcher #x7c1 + :flags #x8 + :binding #x7c0 + ) + (new 'static 'sparticle-group-item :launcher #x7c0 :flags #xc) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1985) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202a00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 4096.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1984) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 18 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202a00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #xa :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #xb + :flags #x1 + :initial-valuef 5461.3335 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 204.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 6144.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x18 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x19 + :flags #x1 + :initial-valuef 206.31703 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x1b :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2284) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-buzzer-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 101) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-orb-small" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x7c2 :flags #x8) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1986) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202c00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 5324.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-orb-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 615) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-save-icon" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x9ae :flags #x8) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2478) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 0.0000000000000000000015909527 + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 7372.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-save-icon-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; definition for method 34 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod initialize-particles progress ((obj progress)) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-0 (-> obj nb-of-particles))) + (set! (-> obj particles s5-0) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-0 part) + (create-launch-control (-> *part-group-id-table* 90) obj) + ) + (set! (-> obj particles s5-0 init-pos x) 256.0) + (set! (-> obj particles s5-0 init-pos y) 224.0) + (set! (-> obj particles s5-0 init-pos z) 16.0) + (set! (-> obj particles s5-0 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-1 (-> obj nb-of-particles))) + (set! (-> obj particles s5-1) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-1 part) + (create-launch-control (-> *part-group-id-table* 88) obj) + ) + (set! (-> obj particles s5-1 init-pos x) -42.0) + (set! (-> obj particles s5-1 init-pos y) 254.0) + (set! (-> obj particles s5-1 init-pos z) 5.0) + (set! (-> obj particles s5-1 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-2 (-> obj nb-of-particles))) + (set! (-> obj particles s5-2) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-2 part) + (create-launch-control (-> *part-group-id-table* 89) obj) + ) + (set! (-> obj particles s5-2 init-pos x) 610.0) + (set! (-> obj particles s5-2 init-pos y) 254.0) + (set! (-> obj particles s5-2 init-pos z) 5.0) + (set! (-> obj particles s5-2 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-3 (-> obj nb-of-particles))) + (set! (-> obj particles s5-3) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-3 part) + (create-launch-control (-> *part-group-id-table* 85) obj) + ) + (set! (-> obj particles s5-3 init-pos x) -320.0) + (set! (-> obj particles s5-3 init-pos y) 40.0) + (set! (-> obj particles s5-3 init-pos z) 14.0) + (set! (-> obj particles s5-3 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-4 (-> obj nb-of-particles))) + (set! (-> obj particles s5-4) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-4 part) + (create-launch-control (-> *part-group-id-table* 86) obj) + ) + (set! (-> obj particles s5-4 init-pos x) -320.0) + (set! (-> obj particles s5-4 init-pos y) 400.0) + (set! (-> obj particles s5-4 init-pos z) 14.0) + (set! (-> obj particles s5-4 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-5 (-> obj nb-of-particles))) + (set! (-> obj particles s5-5) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-5 part) + (create-launch-control (-> *part-group-id-table* 87) obj) + ) + (set! (-> obj particles s5-5 init-pos x) -320.0) + (set! (-> obj particles s5-5 init-pos y) 194.0) + (set! (-> obj particles s5-5 init-pos z) 15.0) + (set! (-> obj particles s5-5 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-6 (-> obj nb-of-particles))) + (set! (-> obj particles s5-6) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-6 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-6 init-pos x) -320.0) + (set! (-> obj particles s5-6 init-pos y) 194.0) + (set! (-> obj particles s5-6 init-pos z) 14.0) + (set! (-> obj particles s5-6 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-7 (-> obj nb-of-particles))) + (set! (-> obj particles s5-7) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-7 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-7 init-pos x) -320.0) + (set! (-> obj particles s5-7 init-pos y) 194.0) + (set! (-> obj particles s5-7 init-pos z) 14.0) + (set! (-> obj particles s5-7 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-8 (-> obj nb-of-particles))) + (set! (-> obj particles s5-8) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-8 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-8 init-pos x) -320.0) + (set! (-> obj particles s5-8 init-pos y) 194.0) + (set! (-> obj particles s5-8 init-pos z) 14.0) + (set! (-> obj particles s5-8 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-9 (-> obj nb-of-particles))) + (set! (-> obj particles s5-9) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-9 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-9 init-pos x) -320.0) + (set! (-> obj particles s5-9 init-pos y) 194.0) + (set! (-> obj particles s5-9 init-pos z) 14.0) + (set! (-> obj particles s5-9 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-10 (-> obj nb-of-particles))) + (set! (-> obj particles s5-10) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-10 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-10 init-pos x) -320.0) + (set! (-> obj particles s5-10 init-pos y) 194.0) + (set! (-> obj particles s5-10 init-pos z) 14.0) + (set! (-> obj particles s5-10 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-11 (-> obj nb-of-particles))) + (set! (-> obj particles s5-11) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-11 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-11 init-pos x) -320.0) + (set! (-> obj particles s5-11 init-pos y) 194.0) + (set! (-> obj particles s5-11 init-pos z) 14.0) + (set! (-> obj particles s5-11 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-12 (-> obj nb-of-particles))) + (set! (-> obj particles s5-12) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-12 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-12 init-pos x) -320.0) + (set! (-> obj particles s5-12 init-pos y) 194.0) + (set! (-> obj particles s5-12 init-pos z) 14.0) + (set! (-> obj particles s5-12 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-13 (-> obj nb-of-particles))) + (set! (-> obj particles s5-13) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-13 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-13 init-pos x) -320.0) + (set! (-> obj particles s5-13 init-pos y) 194.0) + (set! (-> obj particles s5-13 init-pos z) 14.0) + (set! (-> obj particles s5-13 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-14 (-> obj nb-of-particles))) + (set! (-> obj particles s5-14) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-14 part) + (create-launch-control (-> *part-group-id-table* 98) obj) + ) + (set! (-> obj particles s5-14 init-pos x) -320.0) + (set! (-> obj particles s5-14 init-pos y) 224.0) + (set! (-> obj particles s5-14 init-pos z) 14.0) + (set! (-> obj particles s5-14 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-15 (-> obj nb-of-particles))) + (set! (-> obj particles s5-15) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-15 part) + (create-launch-control (-> *part-group-id-table* 99) obj) + ) + (set! (-> obj particles s5-15 init-pos x) -320.0) + (set! (-> obj particles s5-15 init-pos y) 224.0) + (set! (-> obj particles s5-15 init-pos z) 14.0) + (set! (-> obj particles s5-15 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-16 (-> obj nb-of-particles))) + (set! (-> obj particles s5-16) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-16 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-16 init-pos x) -320.0) + (set! (-> obj particles s5-16 init-pos y) 112.0) + (set! (-> obj particles s5-16 init-pos z) 4.0) + (set! (-> obj particles s5-16 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-17 (-> obj nb-of-particles))) + (set! (-> obj particles s5-17) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-17 part) + (create-launch-control (-> *part-group-id-table* 100) obj) + ) + (set! (-> obj particles s5-17 init-pos x) -320.0) + (set! (-> obj particles s5-17 init-pos y) 193.0) + (set! (-> obj particles s5-17 init-pos z) 4.0) + (set! (-> obj particles s5-17 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-18 (-> obj nb-of-particles))) + (set! (-> obj particles s5-18) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-18 part) + (create-launch-control (-> *part-group-id-table* 101) obj) + ) + (set! (-> obj particles s5-18 init-pos x) -320.0) + (set! (-> obj particles s5-18 init-pos y) 40.0) + (set! (-> obj particles s5-18 init-pos z) 4.0) + (set! (-> obj particles s5-18 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-19 (-> obj nb-of-particles))) + (set! (-> obj particles s5-19) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-19 part) + (create-launch-control (-> *part-group-id-table* 92) obj) + ) + (set! (-> obj particles s5-19 init-pos x) -320.0) + (set! (-> obj particles s5-19 init-pos y) 90.0) + (set! (-> obj particles s5-19 init-pos z) 16.0) + (set! (-> obj particles s5-19 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-20 (-> obj nb-of-particles))) + (set! (-> obj particles s5-20) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-20 part) + (create-launch-control (-> *part-group-id-table* 93) obj) + ) + (set! (-> obj particles s5-20 init-pos x) -320.0) + (set! (-> obj particles s5-20 init-pos y) 172.0) + (set! (-> obj particles s5-20 init-pos z) 16.0) + (set! (-> obj particles s5-20 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-21 (-> obj nb-of-particles))) + (set! (-> obj particles s5-21) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-21 part) + (create-launch-control (-> *part-group-id-table* 94) obj) + ) + (set! (-> obj particles s5-21 init-pos x) -320.0) + (set! (-> obj particles s5-21 init-pos y) 254.0) + (set! (-> obj particles s5-21 init-pos z) 16.0) + (set! (-> obj particles s5-21 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-22 (-> obj nb-of-particles))) + (set! (-> obj particles s5-22) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-22 part) + (create-launch-control (-> *part-group-id-table* 95) obj) + ) + (set! (-> obj particles s5-22 init-pos x) -320.0) + (set! (-> obj particles s5-22 init-pos y) 336.0) + (set! (-> obj particles s5-22 init-pos z) 16.0) + (set! (-> obj particles s5-22 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-23 (-> obj nb-of-particles))) + (set! (-> obj particles s5-23) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-23 part) + (create-launch-control (-> *part-group-id-table* 91) obj) + ) + (set! (-> obj particles s5-23 init-pos x) -320.0) + (set! (-> obj particles s5-23 init-pos y) 102.0) + (set! (-> obj particles s5-23 init-pos z) 13.0) + (set! (-> obj particles s5-23 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-24 (-> obj nb-of-particles))) + (set! (-> obj particles s5-24) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-24 part) + (create-launch-control (-> *part-group-id-table* 91) obj) + ) + (set! (-> obj particles s5-24 init-pos x) -320.0) + (set! (-> obj particles s5-24 init-pos y) 184.0) + (set! (-> obj particles s5-24 init-pos z) 13.0) + (set! (-> obj particles s5-24 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-25 (-> obj nb-of-particles))) + (set! (-> obj particles s5-25) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-25 part) + (create-launch-control (-> *part-group-id-table* 91) obj) + ) + (set! (-> obj particles s5-25 init-pos x) -320.0) + (set! (-> obj particles s5-25 init-pos y) 266.0) + (set! (-> obj particles s5-25 init-pos z) 13.0) + (set! (-> obj particles s5-25 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-26 (-> obj nb-of-particles))) + (set! (-> obj particles s5-26) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-26 part) + (create-launch-control (-> *part-group-id-table* 91) obj) + ) + (set! (-> obj particles s5-26 init-pos x) -320.0) + (set! (-> obj particles s5-26 init-pos y) 348.0) + (set! (-> obj particles s5-26 init-pos z) 13.0) + (set! (-> obj particles s5-26 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-27 (-> obj nb-of-particles))) + (set! (-> obj particles s5-27) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-27 part) + (create-launch-control (-> *part-group-id-table* 570) obj) + ) + (set! (-> obj particles s5-27 init-pos x) -320.0) + (set! (-> obj particles s5-27 init-pos y) 338.0) + (set! (-> obj particles s5-27 init-pos z) 4.0) + (set! (-> obj particles s5-27 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-28 (-> obj nb-of-particles))) + (set! (-> obj particles s5-28) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-28 part) + (create-launch-control (-> *part-group-id-table* 571) obj) + ) + (set! (-> obj particles s5-28 init-pos x) -320.0) + (set! (-> obj particles s5-28 init-pos y) 338.0) + (set! (-> obj particles s5-28 init-pos z) 4.0) + (set! (-> obj particles s5-28 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-29 (-> obj nb-of-particles))) + (set! (-> obj particles s5-29) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-29 part) + (create-launch-control (-> *part-group-id-table* 572) obj) + ) + (set! (-> obj particles s5-29 init-pos x) -320.0) + (set! (-> obj particles s5-29 init-pos y) 338.0) + (set! (-> obj particles s5-29 init-pos z) 4.0) + (set! (-> obj particles s5-29 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-30 (-> obj nb-of-particles))) + (set! (-> obj particles s5-30) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-30 part) + (create-launch-control (-> *part-group-id-table* 573) obj) + ) + (set! (-> obj particles s5-30 init-pos x) -320.0) + (set! (-> obj particles s5-30 init-pos y) 338.0) + (set! (-> obj particles s5-30 init-pos z) 4.0) + (set! (-> obj particles s5-30 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-31 (-> obj nb-of-particles))) + (set! (-> obj particles s5-31) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-31 part) + (create-launch-control (-> *part-group-id-table* 615) obj) + ) + (set! (-> obj particles s5-31 init-pos x) -320.0) + (set! (-> obj particles s5-31 init-pos y) 180.0) + (set! (-> obj particles s5-31 init-pos z) 4.0) + (set! (-> obj particles s5-31 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + 0 + (none) + ) + + + + diff --git a/goal_src/engine/ui/progress/progress-static.gc b/goal_src/engine/ui/progress/progress-static.gc index 87e8752041..2b4aae95dd 100644 --- a/goal_src/engine/ui/progress/progress-static.gc +++ b/goal_src/engine/ui/progress/progress-static.gc @@ -153,40 +153,42 @@ ) ) +;; maps options to a progress screen (define *options-remap* - (new 'static 'boxed-array :type array :length 0 :allocated-length 35) + (new 'static 'boxed-array :type (array game-option) :length 0 :allocated-length 35) ) ;; TODO probably an enum. +;; maps "levels" to the appropriate offset in *level-task-data* (define *level-task-data-remap* (new 'static 'boxed-array :type int32 :length 23 :allocated-length 23 0 1 2 - 3 - 3 + 3 ;; jungle? + 3 ;; jungleb? 4 5 6 - 7 - 7 + 7 ;; sunken? + 7 ;; sunkenb? 8 9 10 11 12 - 13 - 13 - 13 + 13 ;; maincave? + 13 ;; robocave? + 13 ;; darkcave? 14 - 15 - 15 - 4 - 4 + 15 ;; citadel? + 15 ;; finalboss? + 4 ;; demo? + 4 ;; intro? ) ) -;; TODO what does this map? GOAL language ID or SCE? +;; maps goal language ID to its name string ID (define *language-name-remap* (new 'static 'boxed-array :type game-text-id :length 6 :allocated-length 6 (game-text-id english) diff --git a/goal_src/engine/ui/progress/progress.gc b/goal_src/engine/ui/progress/progress.gc index 82eb2afa38..ab5ee1d765 100644 --- a/goal_src/engine/ui/progress/progress.gc +++ b/goal_src/engine/ui/progress/progress.gc @@ -5,68 +5,65 @@ ;; name in dgo: progress ;; dgos: GAME, ENGINE -(defmethod relocate game-count-info ((this game-count-info) (offset int)) - "Load in the game-count-info. This is a bit of a hack." - (set! *game-counts* this) + +(deftype progress-global-state (basic) + ((aspect-ratio-choice symbol :offset-assert 4) + (video-mode-choice symbol :offset-assert 8) + (yes-no-choice symbol :offset-assert 12) + (which int32 :offset-assert 16) + (starting-state progress-screen :offset-assert 24) + (last-slot-saved int32 :offset-assert 32) + (slider-backup float :offset-assert 36) + (language-backup int64 :offset-assert 40) + (on-off-backup symbol :offset-assert 48) + (center-x-backup int32 :offset-assert 52) + (center-y-backup int32 :offset-assert 56) + (aspect-ratio-backup symbol :offset-assert 60) + (last-slider-sound int64 :offset-assert 64) + ) + :method-count-assert 9 + :size-assert #x48 + :flag-assert #x900000048 ) -(defmethod hidden? progress ((obj progress)) - (or (not *progress-process*) - (= (-> *progress-process* 0 in-out-position) 4096) - ) +(define *progress-state* + (new 'static 'progress-global-state + :yes-no-choice #f + :which -1 + :last-slot-saved -1 + ) ) -(defun deactivate-progress () - ;; todo stub + +(defun get-game-count ((arg0 int)) + (-> *game-counts* data arg0) ) (defun progress-allowed? () - (with-pp - (not - (or - (-> *setting-control* current talking) - (-> *setting-control* current movie) - (movie?) - (handle->process (-> *game-info* pov-camera-handle)) - (handle->process (-> *game-info* other-camera-handle)) - (< - (the-as int (-> *display* base-frame-counter)) - (the-as int (-> *game-info* letterbox-time)) - ) - (< - (the-as int (-> *display* base-frame-counter)) - (the-as int (-> *game-info* blackout-time)) - ) - (!= (-> *setting-control* current bg-a) 0.0) - (!= (-> *setting-control* current bg-a-force) 0.0) - (not (-> *setting-control* current allow-progress)) - (or - (and - (handle->process (-> *game-info* auto-save-proc)) - (let ((a1-3 (new 'stack-no-clear 'event-message-block))) - (set! (-> a1-3 from) pp) - (set! (-> a1-3 num-params) 0) - (set! (-> a1-3 message) 'progress-allowed?) - (not - (send-event-function - (handle->process (-> *game-info* auto-save-proc)) - a1-3 - ) - ) - ) + (not (or (-> *setting-control* current talking) + (-> *setting-control* current movie) + (movie?) + (handle->process (-> *game-info* pov-camera-handle)) + (handle->process (-> *game-info* other-camera-handle)) + (< (-> *display* base-frame-counter) (the-as int (-> *game-info* letterbox-time))) + (< (-> *display* base-frame-counter) (the-as int (-> *game-info* blackout-time))) + (!= (-> *setting-control* current bg-a) 0.0) + (!= (-> *setting-control* current bg-a-force) 0.0) + (not (-> *setting-control* current allow-progress)) + (or (and (handle->process (-> *game-info* auto-save-proc)) + (not (send-event (handle->process (-> *game-info* auto-save-proc)) 'progress-allowed?)) + ) + (not *target*) + ) + ) ) - (not *target*) - ) - ) - ) - ) ) (defun pause-allowed? () (not (or (< - (the-as int (-> *display* base-frame-counter)) + (-> *display* base-frame-counter) (the-as int (-> *game-info* blackout-time)) ) (!= (-> *setting-control* current bg-a) 0.0) @@ -76,4 +73,3547 @@ (not *target*) ) ) - ) \ No newline at end of file + ) + +(defun init-game-options ((obj progress)) + "Set the options for all of the menus." + + ;; start off by making them all invalid + (dotimes (i 35) + (set! (-> *options-remap* i) #f) + ) + + ;; main menu + (set! (-> *options-remap* 3) + (case *kernel-boot-message* + (('demo) + ;; game demo + *main-options-demo* + ) + (('demo-shared) + ;; game demo with external launcher + *main-options-demo-shared* + ) + (else + ;; normal game + *main-options* + ) + ) + ) + (set! (-> *options-remap* 4) + (cond + ((!= *kernel-boot-message* 'play) + (if (= (scf-get-territory) GAME_TERRITORY_SCEE) + *game-options* + *game-options-demo* + ) + ) + ((and (= (scf-get-territory) GAME_TERRITORY_SCEI) + (not (and (= *progress-cheat* 'language) + (logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons l2)) + (logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r2)) + ) + ) + ) + ;; if ntsc-j and we're not using language cheat (needs l2+r2) + *game-options-japan* + ) + (else + *game-options* + ) + ) + ) + (set! (-> *options-remap* 5) + (if (and (= (-> *progress-state* starting-state) 27) + (or (= (scf-get-territory) GAME_TERRITORY_SCEE) + (and (= *progress-cheat* 'pal) + (logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons l2)) + (logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r2)) + ) + ) + ) + ;; (only if we came from title) if PAL or we're using the PAL cheat (needs l2+r2) + *graphic-title-options-pal* + *graphic-options* + ) + ) + (set! (-> *options-remap* 6) *sound-options*) + (set! (-> *options-remap* 7) *ok-options*) + (set! (-> *options-remap* 8) *ok-options*) + (set! (-> *options-remap* 9) *ok-options*) + (set! (-> *options-remap* 10) *yes-no-options*) + (set! (-> *options-remap* 11) *yes-no-options*) + (set! (-> *options-remap* 19) *ok-options*) + (set! (-> *options-remap* 16) *load-options*) + (set! (-> *options-remap* 17) *save-options*) + (set! (-> *options-remap* 18) *save-options-title*) + (set! (-> *options-remap* 20) *ok-options*) + (set! (-> *options-remap* 21) *ok-options*) + (set! (-> *options-remap* 24) *ok-options*) + (set! (-> *options-remap* 25) *ok-options*) + (set! (-> *options-remap* 26) *ok-options*) + (set! (-> *options-remap* 22) *ok-options*) + (set! (-> *options-remap* 23) *yes-no-options*) + (set! (-> *options-remap* 27) *title*) + (set! (-> *options-remap* 28) *options*) + (set! (-> *options-remap* 29) *ok-options*) + (set! (-> *options-remap* 30) *yes-no-options*) + (set! (-> *options-remap* 31) *yes-no-options*) + (set! (-> *options-remap* 32) *ok-options*) + (set! (-> *options-remap* 33) *ok-options*) + (set! (-> *options-remap* 34) *yes-no-options*) + (set! (-> *progress-state* aspect-ratio-choice) (get-aspect-ratio)) + (set! (-> *progress-state* video-mode-choice) (get-video-mode)) + (set! (-> *progress-state* yes-no-choice) #f) + (set! (-> *game-options* 0 value-to-modify) (&-> *setting-control* default vibration)) + (set! (-> *game-options* 1 value-to-modify) (&-> *setting-control* default play-hints)) + (set! (-> *game-options* 2 value-to-modify) (&-> *setting-control* default language)) + (set! (-> *game-options-japan* 0 value-to-modify) (&-> *setting-control* default vibration)) + (set! (-> *game-options-japan* 1 value-to-modify) (&-> *setting-control* default play-hints)) + (set! (-> *game-options-demo* 0 value-to-modify) (&-> *setting-control* default vibration)) + (set! (-> *game-options-demo* 1 value-to-modify) (&-> *setting-control* default play-hints)) + (set! (-> *graphic-options* 1 value-to-modify) (&-> *progress-state* aspect-ratio-choice)) + (set! (-> *graphic-title-options-pal* 1 value-to-modify) (&-> *progress-state* video-mode-choice)) + (set! (-> *graphic-title-options-pal* 2 value-to-modify) (&-> *progress-state* aspect-ratio-choice)) + (set! (-> *sound-options* 0 value-to-modify) (&-> *setting-control* default sfx-volume)) + (set! (-> *sound-options* 1 value-to-modify) (&-> *setting-control* default music-volume)) + (set! (-> *sound-options* 2 value-to-modify) (&-> *setting-control* default dialog-volume)) + (set! (-> *yes-no-options* 0 value-to-modify) (&-> *progress-state* yes-no-choice)) + (none) + ) + +(defun make-current-level-available-to-progress () + "exactly what it says on the tin." + + (when (and *target* (-> *level* border?)) + (let* ((cur-lev (-> *target* current-level)) + (lev-idx (+ (-> cur-lev info index) -1))) + (if (and (>= lev-idx 0) + (< lev-idx (-> *level-task-data-remap* length)) + (zero? (-> *game-info* level-opened (-> *level-task-data-remap* lev-idx))) + (or (= *kernel-boot-message* 'play) (= (-> cur-lev nickname) 'mis)) ;; only allow misty in demo! + ) + (set! (-> *game-info* level-opened (-> *level-task-data-remap* lev-idx)) 1) + ) + ) + ) + (none) + ) + +(defun make-levels-with-tasks-available-to-progress () + "Open levels that have tasks to do!" + + ;; go through EVERY LEVEL'S TASKS + (dotimes (i (length *level-task-data*)) + ;; level tasks + (let ((tasks (-> *level-task-data* i))) + ;; unless there's no tasks or the level is already open... + (unless (or (= tasks #f) (= (-> *game-info* level-opened i) 1)) + ;; ...do stuff + (cond + ((!= *kernel-boot-message* 'play) + ;; open misty in demo regardless + (if (= (-> tasks level-name-id) (game-text-id misty-level-name)) + (set! (-> *game-info* level-opened i) (the-as uint 1)) + ) + ) + (*cheat-mode* + ;; open every level in cheat mode regardless + (set! (-> *game-info* level-opened i) (the-as uint 1)) + ) + (else + (dotimes (ii (-> tasks nb-of-tasks)) + (if (and (zero? (-> *game-info* level-opened ii)) + (!= ii (-> tasks buzzer-task-index)) + (task-known? (-> tasks task-info ii task-id)) + ) + ;; open level if we know there's a task there and the level is closed + (set! (-> *game-info* level-opened ii) 1) + ) + ) + ) + ) + ) + ) + ) + (none) + ) + +(defun get-next-task-up ((cur-task-idx int) (lev-idx int)) + "find next available task. skips over unknown tasks and doesn't do anything if none are found" + + (let ((gp-0 cur-task-idx)) + (let ((s4-0 (+ cur-task-idx 1)) + (s3-0 (-> *level-task-data* lev-idx)) + ) + (while (and (< s4-0 (-> s3-0 nb-of-tasks)) (= gp-0 cur-task-idx)) + (if (or *cheat-mode* (task-known? (-> s3-0 task-info s4-0 task-id))) + (set! gp-0 s4-0) + ) + (+! s4-0 1) + ) + ) + gp-0 + ) + ) + +(defun get-next-task-down ((cur-task-idx int) (lev-idx int)) + "find previous available task. skips over unknown tasks and doesn't do anything if none are found" + + (let ((gp-0 cur-task-idx)) + (let ((s4-0 (+ cur-task-idx -1)) + (s3-0 (-> *level-task-data* lev-idx)) + ) + (while (and (>= s4-0 0) (= gp-0 cur-task-idx)) + (if (or *cheat-mode* (task-known? (-> s3-0 task-info s4-0 task-id))) + (set! gp-0 s4-0) + ) + (+! s4-0 -1) + ) + ) + gp-0 + ) + ) + +(defun get-next-level-up ((lev-idx int)) + (let ((gp-0 lev-idx)) + (let ((s4-0 (+ lev-idx 1))) + (while (and (< s4-0 (length *level-task-data*)) (= gp-0 lev-idx)) + (if (= (-> *game-info* level-opened s4-0) 1) + (set! gp-0 s4-0) + ) + (+! s4-0 1) + ) + ) + gp-0 + ) + ) + +;; definition for function get-next-level-down +(defun get-next-level-down ((lev-idx int)) + (let ((v0-0 lev-idx)) + (let ((v1-0 (+ lev-idx -1))) + (while (and (>= v1-0 0) (= v0-0 lev-idx)) + (if (= (-> *game-info* level-opened v1-0) 1) + (set! v0-0 v1-0) + ) + (+! v1-0 -1) + ) + ) + v0-0 + ) + ) + +(defun calculate-completion ((the-progress progress)) + "Updates counters and calculates game completion. + Cells are tallied 80% + Buzzers are tallied 10% + Orbs are tallied 10%" + + (local-vars + (current-cells int) + (current-buzzers int) + (current-orbs int) + (total-cells int) + (total-buzzers int) + (total-orbs int) + ) + (set! current-cells 0) + (set! current-buzzers 0) + (set! current-orbs 0) + (set! total-cells 0) + (set! total-buzzers 0) + (set! total-orbs 0) + (dotimes (s5-0 (length *level-task-data*)) + (let ((s4-0 (-> *level-task-data* s5-0))) + (when (!= s4-0 #f) + (when (or (= *kernel-boot-message* 'play) + (= (-> s4-0 level-name-id) (game-text-id misty-level-name)) + ) + (dotimes (s3-0 (-> s4-0 nb-of-tasks)) + (if (= (get-task-status (-> s4-0 task-info s3-0 task-id)) (task-status invalid)) + (+! current-cells 1) + ) + ) + (+! total-cells (-> s4-0 nb-of-tasks)) + (+! current-orbs (-> *game-info* money-per-level s5-0)) + (+! total-orbs (-> *game-counts* data s5-0 money-count)) + (let ((v1-20 (-> s4-0 buzzer-task-index))) + (when (!= v1-20 -1) + (+! current-buzzers (buzzer-count *game-info* (-> s4-0 task-info v1-20 task-id))) + (+! total-buzzers (-> *game-counts* data s5-0 buzzer-count)) + ) + ) + ) + ) + ) + ) + (when the-progress + (set! (-> the-progress total-nb-of-power-cells) total-cells) + (set! (-> the-progress total-nb-of-buzzers) total-buzzers) + (set! (-> the-progress total-nb-of-orbs) total-orbs) + ) + (+ + (/ (* 80.0 (the float current-cells)) (the float total-cells)) + (/ (* 10.0 (the float current-orbs)) (the float total-orbs)) + (/ (* 10.0 (the float current-buzzers)) (the float total-buzzers)) + ) + ) + +(define *progress-save-info* (new 'global 'mc-slot-info)) + +(defmacro progress-make-manipy-icon (obj &key (skel #f) + &key (x #f) + &key (y #f) + &key (z #f) + &key (scale-x #f) + &key (scale-y #f) + ) + `(with-pp + (when (< (-> ,obj nb-of-icons) 6) + (let ((icon-idx (-> ,obj nb-of-icons))) + (set! (-> ,obj icons icon-idx) (new 'static 'hud-icon)) + (let ((new-manipy (make-init-process manipy manipy-init (new 'static 'vector :w 1.0) #f ,skel #f + :to ,obj + :stack *scratch-memory-top* + ))) + (when new-manipy + ;;(set! (-> (-> new-manipy) draw dma-add-func) dma-add-process-drawable-hud) TODO + (set-vector! (-> (-> new-manipy) root trans) 0.0 0.0 0.0 1.0) + (set-vector! (-> (-> new-manipy) root scale) ,scale-x ,scale-y ,scale-x 1.0) + (when #f + (send-event (ppointer->process new-manipy) 'trans-hook #f) + ) + ) + (set! (-> ,obj icons icon-idx icon) new-manipy) + (when new-manipy + (logior! (-> new-manipy 0 mask) (process-mask pause)) + (logclear! (-> new-manipy 0 mask) (process-mask menu progress)) + (set! (-> (-> new-manipy) root trans z) ,z) + (set! (-> ,obj icons icon-idx icon-x) ,x) + (set! (-> ,obj icons icon-idx icon-y) ,y) + (set! (-> ,obj icons icon-idx icon-z) 0) + (set! (-> ,obj icons icon-idx scale-x) ,scale-x) + (set! (-> ,obj icons icon-idx scale-y) ,scale-y) + ) + ) + ) + (+! (-> ,obj nb-of-icons) 1) + ) + ) + ) + +(defmethod initialize-icons progress ((obj progress)) + (progress-make-manipy-icon obj :skel *fuelcell-naked-sg* + :x 256 + :y 77 + :z (meters 0.5) + :scale-x 0.006 + :scale-y 0.006 + ) + (progress-make-manipy-icon obj :skel *fuelcell-naked-sg* + :x 256 + :y 77 + :z (meters 0.5) + :scale-x 0.006 + :scale-y 0.006 + ) + (progress-make-manipy-icon obj :skel *fuelcell-naked-sg* + :x 256 + :y 77 + :z (meters 0.5) + :scale-x 0.006 + :scale-y 0.006 + ) + (progress-make-manipy-icon obj :skel *fuelcell-naked-sg* + :x 256 + :y 77 + :z (meters 0.5) + :scale-x 0.006 + :scale-y 0.006 + ) + (progress-make-manipy-icon obj :skel *money-sg* + :x -320 + :y 253 + :z (meters 17) + :scale-x 0.013 + :scale-y -0.015 + ) + (progress-make-manipy-icon obj :skel *money-sg* + :x -320 + :y 253 + :z (meters 0.25) + :scale-x 0.008 + :scale-y -0.009 + ) + (send-event (ppointer->process (-> obj icons 1 icon)) 'set-frame-num 2.5) + (send-event (ppointer->process (-> obj icons 2 icon)) 'set-frame-num 10.0) + (send-event (ppointer->process (-> obj icons 3 icon)) 'set-frame-num 15.5) + (none) + ) + +(defmethod enter! progress ((obj progress) (screen progress-screen) (option int)) + (when (!= (-> obj display-state) screen) + (set! (-> *progress-state* yes-no-choice) #f) + (set! (-> obj selected-option) #f) + (set! (-> obj option-index) option) + (set! (-> obj last-option-index-change) (-> *display* real-frame-counter)) + (set! (-> obj display-state) screen) + (set! (-> obj next-display-state) screen) + (set-transition-speed! obj) + (case (-> obj display-state) + (((progress-screen memcard-creating)) + (auto-save-command 'create-file 0 0 obj) + ) + (((progress-screen memcard-loading)) + (set! (-> *progress-state* last-slot-saved) (-> *progress-state* which)) + (sound-volume-off) + (auto-save-command 'restore 0 (-> *progress-state* which) obj) + ) + (((progress-screen memcard-saving)) + (set! (-> *progress-state* last-slot-saved) (-> *progress-state* which)) + (auto-save-command 'save 0 (-> *progress-state* which) obj) + ) + (((progress-screen memcard-formatting)) + (auto-save-command 'format-card 0 0 obj) + ) + (((progress-screen save-game) (progress-screen load-game)) + (set! (-> obj option-index) (max 0 (-> *progress-state* last-slot-saved))) + ) + (((progress-screen memcard-removed)) + (set! (-> *progress-state* last-slot-saved) 0) + ) + ) + ) + (none) + ) + +(defmethod push! progress ((obj progress)) + (let ((v1-0 (-> obj display-state-pos))) + (cond + ((< v1-0 5) + (set! (-> obj display-state-stack v1-0) (-> obj display-state)) + (set! (-> obj option-index-stack v1-0) (-> obj option-index)) + (set! (-> obj display-state-pos) (+ v1-0 1)) + ) + (else + (format #t "ERROR: Can't push any more states on the display-state-stack.~%") + ) + ) + ) + 0 + (none) + ) + +(defmethod pop! progress ((obj progress)) + (let ((v1-0 (-> obj display-state-pos))) + (cond + ((> v1-0 0) + (let ((a2-0 (+ v1-0 -1))) + (set! (-> obj display-state-pos) a2-0) + (enter! obj (-> obj display-state-stack a2-0) (-> obj option-index-stack a2-0)) + ) + ) + (else + (set-master-mode 'game) + ) + ) + ) + (none) + ) + +(defmethod set-transition-progress! progress ((obj progress) (arg0 int)) + (set! (-> obj transition-offset) arg0) + (set! (-> obj transition-offset-invert) (- 512 arg0)) + (set! (-> obj transition-percentage) (* 0.001953125 (the float arg0))) + (set! + (-> obj transition-percentage-invert) + (- 1.0 (-> obj transition-percentage)) + ) + 0 + (none) + ) + +(defmethod set-transition-speed! progress ((obj progress)) + (let ((v1-0 (-> obj display-state))) + (if (or (= v1-0 0) (= v1-0 1) (= v1-0 2) (= v1-0 16) (= v1-0 17) (= v1-0 18)) + (set! (-> obj transition-speed) 15.0) + (set! (-> obj transition-speed) 45.0) + ) + ) + 0 + (none) + ) + +(define-extern progress-waiting (state progress)) +(defbehavior progress-init-by-other progress () + (logclear! (-> self mask) (process-mask menu progress)) + (set! (-> self nb-of-particles) 0) + (set! (-> self max-nb-of-particles) 40) + (set! (-> self nb-of-icons) 0) + (set! (-> self in-out-position) 4096) + (set! (-> self current-debug-string) 0) + (set! (-> self current-debug-group) 0) + (set! (-> self display-level-index) 0) + (set! (-> self next-level-index) 0) + (set! (-> self option-index) 0) + (set! (-> self selected-option) #f) + (set! (-> self card-info) #f) + (set! (-> self last-option-index-change) (-> *display* real-frame-counter)) + (set! (-> self display-state-pos) 0) + (set! (-> self in-transition) #f) + (set! (-> self force-transition) #f) + (set! (-> self stat-transition) #f) + (set! (-> self level-transition) 0) + (set! (-> self left-side-x-scale) 0.0) + (set! (-> self left-side-y-scale) 0.0) + (set! (-> self right-side-x-scale) 0.0) + (set! (-> self right-side-y-scale) 0.0) + (dotimes (v1-6 5) + (set! (-> self display-state-stack v1-6) (the progress-screen 0)) + ) + (init-game-options self) + (initialize-icons self) + (initialize-particles self) + (set! (-> self particle-state 0) 0) + (set! (-> self particle-state 1) 0) + (set! (-> self particle-state 2) 0) + (set! (-> self particle-state 3) 0) + (set! (-> self particle-state 4) 0) + (set! (-> self particle-state 5) 0) + (set! (-> self particle-state 6) 1) + (set! (-> self particle-state 7) 1) + (set! (-> self particle-state 8) 1) + (set! (-> self particle-state 9) 1) + (set! (-> self particle-state 10) 1) + (set! (-> self particle-state 11) 1) + (set! (-> self particle-state 12) 1) + (set! (-> self particle-state 13) 1) + (set! (-> self particle-state 14) 0) + (set! (-> self particle-state 15) 0) + (set! (-> self particle-state 16) 3) + (set! (-> self particle-state 17) 0) + (set! (-> self particle-state 18) 0) + (set! (-> self particle-state 19) 0) + (set! (-> self particle-state 20) 0) + (set! (-> self particle-state 21) 0) + (set! (-> self particle-state 22) 0) + (set! (-> self particle-state 23) 0) + (set! (-> self particle-state 24) 0) + (set! (-> self particle-state 25) 0) + (set! (-> self particle-state 26) 0) + (set! (-> self particle-state 27) 0) + (set! (-> self particle-state 28) 0) + (set! (-> self particle-state 29) 0) + (set! (-> self particle-state 30) 0) + (set! (-> self particle-state 31) 0) + (let ((gp-0 (new 'stack-no-clear 'quaternion))) + (quaternion-axis-angle! gp-0 0.0 1.0 0.0 16384.0) + (quaternion*! (-> self icons 0 icon 0 root quat) gp-0 (-> self icons 0 icon 0 root quat)) + (quaternion-axis-angle! gp-0 0.0 1.0 0.0 32768.0) + (quaternion*! (-> self icons 1 icon 0 root quat) gp-0 (-> self icons 1 icon 0 root quat)) + (quaternion-axis-angle! gp-0 0.0 1.0 0.0 49152.0) + (quaternion*! (-> self icons 2 icon 0 root quat) gp-0 (-> self icons 2 icon 0 root quat)) + (quaternion-axis-angle! gp-0 0.0 1.0 0.0 0.0) + (quaternion*! (-> self icons 3 icon 0 root quat) gp-0 (-> self icons 3 icon 0 root quat)) + ) + (adjust-ratios self (get-aspect-ratio) (get-video-mode)) + (adjust-icons self) + (set! (-> self event-hook) (-> progress-waiting event)) + (go progress-waiting) + (none) + ) + +(define *progress-stack* (the (pointer uint8) (malloc 'global #x3800))) +(defconstant *progress-stack-top* (&-> *progress-stack* #x3800)) + +(defun activate-progress ((creator process) (screen progress-screen)) + (when *target* + (cond + ((not *progress-process*) + (when (progress-allowed?) + ;;(hide-hud) TODO + (make-levels-with-tasks-available-to-progress) + (disable-level-text-file-loading) + (set! (-> *progress-state* starting-state) screen) + (set! *progress-process* (make-init-process progress progress-init-by-other + :to creator + :stack *progress-stack-top*)) + (let ((s5-1 *progress-process*)) + (set! (-> s5-1 0 completion-percentage) (calculate-completion (-> s5-1 0))) + (set! *master-mode* 'progress) + (let ((s4-1 (-> *target* current-level))) + (cond + ((!= *kernel-boot-message* 'play) + (set! (-> s5-1 0 display-level-index) 4) ;; default misty on demo + ) + ((or (= s4-1 #f) + (< (length *level-task-data-remap*) (-> s4-1 info index)) + ) + (set! (-> s5-1 0 display-level-index) 0) ;; geyser rock + ) + (else + (set! (-> s5-1 0 display-level-index) (-> *level-task-data-remap* (+ (-> s4-1 info index) -1))) + ) + ) + ) + (set! (-> s5-1 0 next-level-index) (-> s5-1 0 display-level-index)) + (set! (-> s5-1 0 display-state) (progress-screen invalid)) + (set-transition-progress! (-> s5-1 0) 512) + (set! (-> s5-1 0 task-index) (get-next-task-up -1 (-> s5-1 0 display-level-index))) + ) + ) + (when *progress-process* + (enter! (-> *progress-process* 0) screen 0) + (set! (-> *progress-process* 0 card-info) #f) + ) + ) + (else + (push! (-> *progress-process* 0)) + (set! (-> *progress-process* 0 next-display-state) screen) + (set! (-> *progress-process* 0 card-info) #f) + ) + ) + ) + (none) + ) + +(defun deactivate-progress () + (when (and *progress-process* + (= (-> *progress-process* 0 next-state name) 'progress-gone) + ) + (copy-settings-from-target! *setting-control*) + (dotimes (gp-0 (-> *progress-process* 0 nb-of-particles)) + (deactivate (-> *progress-process* 0 particles gp-0 part)) + (set! (-> *progress-process* 0 particles gp-0 part matrix) -1) + ) + (set! (-> *progress-process* 0 nb-of-particles) 0) + (deactivate (-> *progress-process* 0)) + (set! *progress-process* (the-as (pointer progress) #f)) + (enable-level-text-file-loading) + ) + (none) + ) + +(defun hide-progress-screen () + "shoo!" + + (when *progress-process* + (send-event (ppointer->process *progress-process*) 'go-away) + ) + (none) + ) + +(defun hide-progress-icons () + + ;; starts from 6 and clears 8 particles + (let ((v1-0 6)) + (dotimes (a0-0 8) + (set! (-> *progress-process* 0 particles v1-0 init-pos x) -320.0) + (+! v1-0 1) + ) + ) + (set! (-> *progress-process* 0 particles 5 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 14 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 15 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 19 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 20 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 21 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 22 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 23 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 24 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 25 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 26 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 27 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 28 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 29 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 30 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 31 init-pos x) -320.0) + (set! (-> *progress-process* 0 icons 4 icon-x) -320) + 0 + (none) + ) + +(defmethod relocate game-count-info ((this game-count-info) (offset int)) + "Load in the game-count-info. This is a bit of a hack." + (set! *game-counts* this) + ) + +(defmethod relocate progress ((obj progress) (arg0 int)) + (dotimes (v1-0 (-> obj nb-of-particles)) + (when (-> obj particles v1-0 part) + (if (nonzero? (-> obj particles v1-0 part)) + (set! (-> obj particles v1-0 part) + (the-as sparticle-launch-control (&+ (the-as pointer (-> obj particles v1-0 part)) arg0))) + ) + ) + ) + (the-as progress ((method-of-type process relocate) obj arg0)) + ) + +(defmethod adjust-sprites progress ((obj progress)) + (let ((f0-1 (* (1/ METER_LENGTH) (the float (-> obj in-out-position))))) + (set! (-> obj particles 2 init-pos x) (the float (+ (-> obj right-x-offset) 409 (the int (* 301.5 f0-1))))) + (set! (-> obj particles 1 init-pos x) (the float (+ (-> obj left-x-offset) 59))) + (set! (-> obj left-side-x-scale) (* 4096.0 (+ (/ 3.5 (-> obj sides-x-scale)) (* 10.0 f0-1)))) + (set! (-> obj left-side-y-scale) (* 4096.0 (+ (-> obj sides-y-scale) (* 10.0 f0-1)))) + (set! (-> obj right-side-x-scale) (* 4096.0 (+ (/ 6.0 (-> obj sides-x-scale)) (* 4.0 f0-1)))) + (set! (-> obj right-side-y-scale) (* 4096.0 (+ (-> obj sides-y-scale) (* 4.0 f0-1)))) + ) + (dotimes (s5-0 (-> obj nb-of-particles)) + (set! (-> obj particles s5-0 pos x) (+ -256.0 (-> obj particles s5-0 init-pos x))) + (set! (-> obj particles s5-0 pos y) (* 0.5 (- (* (-> obj particles s5-0 init-pos y) (-> *video-parms* relative-y-scale)) + (the float (-> *video-parms* screen-sy)) + ) + ) + ) + (set! (-> obj particles s5-0 pos z) (-> obj particles s5-0 init-pos z)) + (when (> (-> obj particles s5-0 part matrix) 0) + (let ((v1-53 (sprite-get-user-hvdf (-> obj particles s5-0 part matrix)))) + (set! (-> v1-53 vector x) (the float (+ (the int (-> obj particles s5-0 pos x)) 2048))) + (set! (-> v1-53 vector y) (the float (+ (the int (-> obj particles s5-0 pos y)) 2048))) + (set! (-> v1-53 vector z) (- (-> *math-camera* hvdf-off z) (* 1024.0 (-> obj particles s5-0 pos z)))) + (set! (-> v1-53 vector w) (-> *math-camera* hvdf-off w)) + ) + ) + ;(dummy-11 (-> obj particles s5-0 part) *null-vector*) + ) + (none) + ) + +(defmethod adjust-icons progress ((obj progress)) + (dotimes (v1-0 (-> obj nb-of-icons)) + (when (>= v1-0 4) + (set-vector! (-> obj icons v1-0 icon 0 root scale) + (* (-> obj icons v1-0 scale-x) (-> *video-parms* relative-x-scale)) + (* (-> obj icons v1-0 scale-y) (-> *video-parms* relative-y-scale)) + (* (-> obj icons v1-0 scale-x) (-> *video-parms* relative-x-scale)) + 1.0 + ) + (set! (-> obj icons v1-0 icon 0 root trans x) (the float (+ (-> obj icons v1-0 icon-x) -256))) + (set! (-> obj icons v1-0 icon 0 root trans y) (* (-> *video-parms* relative-y-scale) + (- (* (-> *video-parms* relative-y-scale) + (the float (-> obj icons v1-0 icon-y))) + (the float (-> *video-parms* screen-sy)) + ) + )) + ) + ) + (none) + ) + +(defmethod adjust-ratios progress ((obj progress) (aspect symbol) (video-mode symbol)) + (case aspect + (('aspect4x3) + (set! (-> obj sides-x-scale) 1.0) + (set! (-> obj sides-y-scale) 13.0) + (set! (-> obj left-x-offset) 0) + (set! (-> obj right-x-offset) 0) + (set! (-> obj button-scale) 1.0) + (set! (-> obj slot-scale) 8192.0) + (set! (-> obj small-orb-y-offset) 58) + (set! (-> obj icons 5 scale-x) 0.008) + (set! (-> obj icons 5 scale-y) -0.009) + (set! (-> obj big-orb-y-offset) 243) + (set! (-> obj icons 4 scale-x) 0.013) + (set! (-> obj icons 4 scale-y) -0.015) + ) + (('aspect16x9) + (set! (-> obj sides-x-scale) 1.2) + (set! (-> obj sides-y-scale) 9.8) + (set! (-> obj left-x-offset) -10) + (set! (-> obj right-x-offset) 17) + (set! (-> obj button-scale) 1.05) + (set! (-> obj slot-scale) 6144.0) + (set! (-> obj small-orb-y-offset) 59) + (set! (-> obj icons 5 scale-x) 0.008) + (set! (-> obj icons 5 scale-y) -0.0098) + (set! (-> obj big-orb-y-offset) 255) + (set! (-> obj icons 4 scale-x) 0.017) + (set! (-> obj icons 4 scale-y) -0.0205) + ) + ) + (when (= video-mode 'pal) + (set! (-> obj icons 5 scale-y) (* 1.15 (-> obj icons 5 scale-y))) + (set! (-> obj icons 4 scale-x) (* 1.05 (-> obj icons 4 scale-x))) + (set! (-> obj icons 4 scale-y) (* (-> obj icons 4 scale-y) (if (= aspect 'aspect16x9) + 1.18 + 1.15 + ))) + (+! (-> obj big-orb-y-offset) (if (= aspect 'aspect16x9) + 3 + 2 + )) + ) + (none) + ) + +(defmethod dummy-32 progress ((obj progress)) + (let ((v1-2 (-> *progress-process* 0 display-state)) + (a1-1 (-> *progress-state* starting-state)) + ) + (and + (= (-> obj next-state name) 'progress-normal) + (not (-> obj in-transition)) + (not (-> obj selected-option)) + (or + (= v1-2 (progress-screen fuel-cell)) + (= v1-2 (progress-screen money)) + (= v1-2 (progress-screen buzzer)) + (and + (or + (= a1-1 (progress-screen fuel-cell)) + (= a1-1 (progress-screen money)) + (= a1-1 (progress-screen buzzer)) + (= a1-1 (progress-screen title)) + ) + (or + (= v1-2 (progress-screen settings)) + (= v1-2 (progress-screen game-settings)) + (= v1-2 (progress-screen graphic-settings)) + (= v1-2 (progress-screen sound-settings)) + (= v1-2 (progress-screen title)) + (= v1-2 (progress-screen settings-title)) + ) + ) + ) + ) + ) + ) + +(defmethod dummy-19 progress ((obj progress)) + (the-as symbol (and *progress-process* (zero? (-> *progress-process* 0 in-out-position)))) + ) + +(defmethod hidden? progress ((obj progress)) + (or (not *progress-process*) + (= (-> *progress-process* 0 in-out-position) 4096) + ) + ) + +(defmacro test-make-target () + `(begin + (set! *target* (-> (make-function-process target (lambda () (loop (suspend))) :from *target-dead-pool* :to *target-pool*))) + (run-now-in-process *target* + (lambda :behavior target () + (set! (-> self control) (new 'process 'control-info self (collide-list-enum player))) + (set! (-> self fact-info-target) (new 'process 'fact-info-target self (pickup-type eco-pill-random) + (-> *FACT-bank* default-pill-inc))) + (set! (-> self current-level) #f) + (set! (-> self game) *game-info*) + )) + ) + ) + +(define-extern progress-gone (state progress)) +(define-extern progress-coming-in (state progress)) +(define-extern progress-going-out (state progress)) +(defstate progress-waiting (progress) + :event (behavior ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) + (case arg2 + (('go-away) + (go progress-gone) + ) + ) + #f + ) + :code (behavior () + (loop + (when (hud-hidden?) + (dotimes (gp-0 (-> self nb-of-particles)) + (if (= (-> self particles gp-0 part matrix) -1) + (set! (-> self particles gp-0 part matrix) (sprite-allocate-user-hvdf)) + ) + ) + (set-setting! *setting-control* self 'common-page 'set 0.0 1) + (suspend) + (go progress-coming-in) + ) + (suspend) + ) + (none) + ) + ) + +(defstate progress-gone (progress) + :code (behavior () + (clear-pending-settings-from-process *setting-control* self 'process-mask) + (copy-settings-from-target! *setting-control*) + (logior! (-> self mask) (process-mask sleep)) + (suspend) + (none) + ) + ) + +(defmethod dummy-53 progress ((obj progress) (arg0 progress-screen)) + (let ((s4-0 (-> obj card-info)) + (gp-0 arg0) + ) + (when s4-0 + (case arg0 + (((progress-screen memcard-no-space) + (progress-screen memcard-not-inserted) + (progress-screen memcard-not-formatted) + ) + (cond + ((zero? (-> s4-0 handle)) + (set! gp-0 (progress-screen memcard-not-inserted)) + ) + ((zero? (-> s4-0 formatted)) + (cond + ((or + (zero? (-> obj display-state-pos)) + (and + (!= (-> *progress-state* starting-state) 27) + (nonzero? (-> *progress-state* starting-state)) + ) + ) + (set-master-mode 'game) + ) + (else + (if (!= arg0 9) + (set! gp-0 (progress-screen memcard-format)) + ) + ) + ) + ) + ((and + (zero? (-> s4-0 inited)) + (< (-> s4-0 mem-actual) (-> s4-0 mem-required)) + ) + (set! gp-0 (progress-screen memcard-no-space)) + ) + ((or + (zero? (-> obj display-state-pos)) + (and + (!= (-> *progress-state* starting-state) 27) + (nonzero? (-> *progress-state* starting-state)) + ) + ) + (set-master-mode 'game) + ) + (else + (set! gp-0 (progress-screen save-game)) + ) + ) + ) + (((progress-screen memcard-insert)) + (if (= (-> s4-0 inited) 1) + (set! gp-0 (progress-screen load-game)) + ) + ) + ) + (cond + ((zero? (-> s4-0 handle)) + (cond + ((-> *setting-control* current auto-save) + (set! gp-0 (progress-screen memcard-removed)) + ) + (else + (cond + ((= arg0 (progress-screen load-game)) + (set! gp-0 (progress-screen memcard-insert)) + ) + ((or + (= arg0 (progress-screen memcard-format)) + (= arg0 (progress-screen memcard-no-space)) + (= arg0 (progress-screen memcard-not-formatted)) + (= arg0 (progress-screen save-game)) + (= arg0 (progress-screen save-game-title)) + (= arg0 (progress-screen memcard-no-data)) + (= arg0 (progress-screen memcard-data-exists)) + ) + (set! gp-0 (progress-screen memcard-not-inserted)) + ) + ) + ) + ) + ) + ((zero? (-> s4-0 formatted)) + (case arg0 + (((progress-screen load-game)) + (set! gp-0 (progress-screen memcard-insert)) + ) + (((progress-screen save-game) (progress-screen save-game-title)) + (set! gp-0 (progress-screen memcard-format)) + ) + ) + ) + ((zero? (-> s4-0 inited)) + (case arg0 + (((progress-screen save-game) (progress-screen save-game-title)) + (if (>= (-> s4-0 mem-actual) (-> s4-0 mem-required)) + (set! gp-0 (progress-screen memcard-no-data)) + (set! gp-0 (progress-screen memcard-no-space)) + ) + ) + (((progress-screen load-game)) + (set! gp-0 (progress-screen memcard-insert)) + ) + ) + ) + ) + ) + gp-0 + ) + ) + +(defmethod dummy-31 progress ((obj progress)) + (let ((s5-0 (-> obj card-info))) + (when (and s5-0 (not (-> obj in-transition))) + (when + (or + (logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x)) + (logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle)) + ) + (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons x)) + (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x)) + (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons circle)) + (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle)) + (case (-> obj display-state) + (((progress-screen load-game)) + (cond + ((< (-> obj option-index) 4) + (when (nonzero? (-> s5-0 file (-> obj option-index) present)) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> *progress-state* which) (-> obj option-index)) + (set! (-> obj next-display-state) (progress-screen memcard-loading)) + ) + ) + (else + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + ) + ) + (((progress-screen save-game) (progress-screen save-game-title)) + (cond + ((< (-> obj option-index) 4) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> *progress-state* which) (-> obj option-index)) + (if (zero? (-> s5-0 file (-> obj option-index) present)) + (set! (-> obj next-display-state) (progress-screen memcard-saving)) + (set! + (-> obj next-display-state) + (progress-screen memcard-data-exists) + ) + ) + ) + ((and + (= (-> obj display-state) (progress-screen save-game-title)) + (= (-> obj option-index) 4) + ) + (sound-play-by-name + (static-sound-name "starts-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (sound-volume-off) + (set! (-> *game-info* mode) 'play) + (initialize! *game-info* 'game (the-as game-save #f) "intro-start") + (set-master-mode 'game) + ) + (else + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + ) + ) + (((progress-screen memcard-insert)) + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + (((progress-screen memcard-data-exists)) + (cond + ((-> *progress-state* yes-no-choice) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen memcard-saving)) + ) + ((begin + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (= (-> obj display-state-stack 0) (progress-screen title)) + ) + (set! (-> obj next-display-state) (progress-screen save-game-title)) + ) + (else + (set! (-> obj next-display-state) (progress-screen save-game)) + ) + ) + ) + (((progress-screen memcard-no-data)) + (cond + ((-> *progress-state* yes-no-choice) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen memcard-creating)) + ) + (else + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (sound-volume-off) + (set! (-> *game-info* mode) 'play) + (initialize! *game-info* 'game (the-as game-save #f) "intro-start") + (set-master-mode 'game) + ) + ) + ) + (((progress-screen memcard-no-space) + (progress-screen memcard-not-inserted) + (progress-screen memcard-not-formatted) + ) + (cond + ((= (-> obj display-state-stack 0) (progress-screen title)) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (sound-volume-off) + (set! (-> *game-info* mode) 'play) + (initialize! *game-info* 'game (the-as game-save #f) "intro-start") + (set-master-mode 'game) + ) + ((nonzero? (-> obj display-state-stack 0)) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set-master-mode 'game) + ) + (else + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + ) + ) + (((progress-screen memcard-error-loading) + (progress-screen memcard-error-saving) + (progress-screen memcard-error-formatting) + (progress-screen memcard-error-creating) + (progress-screen memcard-auto-save-error) + (progress-screen memcard-removed) + (progress-screen auto-save) + ) + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + (((progress-screen pal-change-to-60hz)) + (cond + ((-> *progress-state* yes-no-choice) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! + (-> *setting-control* default video-mode) + (-> *progress-state* video-mode-choice) + ) + (set! + (-> obj video-mode-timeout) + (the-as uint (-> *display* real-frame-counter)) + ) + (set! (-> obj next-display-state) (progress-screen pal-now-60hz)) + ) + (else + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> *progress-state* video-mode-choice) 'pal) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + ) + ) + (((progress-screen pal-now-60hz)) + (cond + ((not (-> *progress-state* yes-no-choice)) + (set! (-> *progress-state* video-mode-choice) 'pal) + (set! + (-> *setting-control* default video-mode) + (-> *progress-state* video-mode-choice) + ) + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + (else + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + (((progress-screen no-disc) (progress-screen bad-disc)) + (when (is-cd-in?) + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + ) + (((progress-screen quit)) + (cond + ((-> *progress-state* yes-no-choice) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (sound-volume-off) + (set! (-> *game-info* mode) 'play) + (initialize! *game-info* 'game (the-as game-save #f) "title-start") + ) + (else + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + ) + ) + (((progress-screen memcard-format)) + (cond + ((-> *progress-state* yes-no-choice) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen memcard-formatting)) + ) + ((= (-> obj display-state-stack 0) (progress-screen title)) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (sound-volume-off) + (set! (-> *game-info* mode) 'play) + (initialize! *game-info* 'game (the-as game-save #f) "intro-start") + (set-master-mode 'game) + ) + (else + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + ) + ) + ) + ) + ) + ) + (none) + ) + +(defmethod dummy-29 progress ((obj progress)) + (mc-get-slot-info 0 *progress-save-info*) + (set! (-> obj card-info) *progress-save-info*) + (let ((s5-0 (-> *options-remap* (-> obj display-state)))) + (when (and s5-0 (not (-> obj in-transition))) + (cond + ((logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons up)) + (cond + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons up)) + (when (not (-> obj selected-option)) + (if (!= (length s5-0) 1) + (sound-play-by-name + (static-sound-name "cursor-up-down") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + (set! + (-> obj last-option-index-change) + (-> *display* real-frame-counter) + ) + (if (> (-> obj option-index) 0) + (+! (-> obj option-index) -1) + (set! (-> obj option-index) (+ (length s5-0) -1)) + ) + ) + ) + (else + (when (-> obj selected-option) + (let ((v1-34 #f)) + (case (-> s5-0 (-> obj option-index) option-type) + ((3) + (when (< -48 (-> *setting-control* current screeny)) + (set! v1-34 #t) + (+! (-> *setting-control* default screeny) -1) + ) + ) + ) + (when v1-34 + (when + (< + 90 + (- + (-> *display* real-frame-counter) + (-> *progress-state* last-slider-sound) + ) + ) + (set! + (-> *progress-state* last-slider-sound) + (-> *display* real-frame-counter) + ) + (sound-play-by-name + (static-sound-name "slider2001") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + ) + ) + ) + ) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons down)) + (cond + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons down)) + (when (not (-> obj selected-option)) + (if (!= (length s5-0) 1) + (sound-play-by-name + (static-sound-name "cursor-up-down") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + (set! + (-> obj last-option-index-change) + (-> *display* real-frame-counter) + ) + (cond + ((< (-> obj option-index) (+ (length s5-0) -1)) + (+! (-> obj option-index) 1) + ) + (else + (set! (-> obj option-index) 0) + 0 + ) + ) + ) + ) + (else + (when (-> obj selected-option) + (let ((v1-69 #f)) + (case (-> s5-0 (-> obj option-index) option-type) + ((3) + (when (< (-> *setting-control* current screeny) 48) + (set! v1-69 #t) + (+! (-> *setting-control* default screeny) 1) + ) + ) + ) + (when v1-69 + (when + (< + 90 + (- + (-> *display* real-frame-counter) + (-> *progress-state* last-slider-sound) + ) + ) + (set! + (-> *progress-state* last-slider-sound) + (-> *display* real-frame-counter) + ) + (sound-play-by-name + (static-sound-name "slider2001") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + ) + ) + ) + ) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons left)) + (cond + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons left)) + (when + (or + (-> obj selected-option) + (= (-> s5-0 (-> obj option-index) option-type) 7) + ) + (let ((s4-5 #f)) + (case (-> s5-0 (-> obj option-index) option-type) + ((2 7) + (when + (not + (-> + (the-as + (pointer uint32) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + (set! s4-5 #t) + (if + (= + (-> s5-0 (-> obj option-index) value-to-modify) + (&-> *setting-control* current vibration) + ) + (cpad-set-buzz! (-> *cpad-list* cpads 0) 1 255 90) + ) + ) + (set! + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + #t + ) + ) + ((4) + (set! + s4-5 + (= + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + 'aspect16x9 + ) + ) + (set! + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + 'aspect4x3 + ) + ) + ((5) + (set! + s4-5 + (= + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + 'ntsc + ) + ) + (set! + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + 'pal + ) + ) + ((1) + (if + (> + (the-as + int + (-> + (the-as + (pointer uint64) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + 0 + ) + (+! + (-> + (the-as + (pointer uint64) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + -1 + ) + (set! + (-> + (the-as + (pointer int64) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (if + (and + (zero? (scf-get-territory)) + (not + (and + (= *progress-cheat* 'language) + (logtest? + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons l2) + ) + (logtest? + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons r2) + ) + ) + ) + ) + 4 + 5 + ) + ) + ) + (set! (-> obj language-transition) #t) + (set! (-> obj language-direction) #t) + (set! s4-5 #t) + ) + ) + (if s4-5 + (sound-play-by-name + (static-sound-name "cursor-l-r") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + ) + ) + ) + (else + (when (-> obj selected-option) + (let ((v1-157 #f)) + (let ((a0-101 (-> s5-0 (-> obj option-index) option-type))) + (cond + ((zero? a0-101) + (cond + ((>= + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (+ 1.0 (-> s5-0 (-> obj option-index) param1)) + ) + (set! + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (+ + -1.0 + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + ) + (set! v1-157 #t) + ) + ((< + (-> s5-0 (-> obj option-index) param1) + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + (set! + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (-> s5-0 (-> obj option-index) param1) + ) + (set! v1-157 #t) + ) + ) + ) + ((= a0-101 3) + (when (< -96 (-> *setting-control* default screenx)) + (set! v1-157 #t) + (+! (-> *setting-control* default screenx) -1) + ) + ) + ) + ) + (when v1-157 + (let ((f30-0 100.0)) + (case (-> s5-0 (-> obj option-index) name) + (((game-text-id music-volume) (game-text-id speech-volume)) + (set! + f30-0 + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + ) + ) + (when + (< + 90 + (- + (-> *display* real-frame-counter) + (-> *progress-state* last-slider-sound) + ) + ) + (set! + (-> *progress-state* last-slider-sound) + (-> *display* real-frame-counter) + ) + (sound-play-by-name + (static-sound-name "slider2001") + (new-sound-id) + (the int (* 10.24 f30-0)) + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + ) + ) + ) + ) + ) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons right)) + (cond + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons right)) + (when + (or + (-> obj selected-option) + (= (-> s5-0 (-> obj option-index) option-type) 7) + ) + (let ((v1-217 (the-as object #f))) + (case (-> s5-0 (-> obj option-index) option-type) + ((2 7) + (set! + v1-217 + (-> + (the-as + (pointer uint32) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + (set! + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + #f + ) + ) + ((4) + (set! + v1-217 + (= + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + 'aspect4x3 + ) + ) + (set! + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + 'aspect16x9 + ) + ) + ((5) + (set! + v1-217 + (= + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + 'pal + ) + ) + (set! + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + 'ntsc + ) + ) + ((1) + (let + ((v1-243 + (if + (and + (zero? (scf-get-territory)) + (not + (and + (= *progress-cheat* 'language) + (logtest? + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons l2) + ) + (logtest? + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons r2) + ) + ) + ) + ) + 4 + 5 + ) + ) + ) + (cond + ((< + (the-as + int + (-> + (the-as + (pointer uint64) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + v1-243 + ) + (+! + (-> + (the-as + (pointer uint64) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + 1 + ) + ) + (else + (set! + (-> + (the-as + (pointer int64) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + 0 + ) + 0 + ) + ) + ) + (set! (-> obj language-transition) #t) + (set! (-> obj language-direction) #f) + (set! v1-217 #t) + ) + ) + (if v1-217 + (sound-play-by-name + (static-sound-name "cursor-l-r") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + ) + ) + ) + (else + (when (-> obj selected-option) + (let ((v1-263 #f)) + (let ((a0-177 (-> s5-0 (-> obj option-index) option-type))) + (cond + ((zero? a0-177) + (cond + ((>= + (+ -1.0 (-> s5-0 (-> obj option-index) param2)) + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + (set! + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (+ + 1.0 + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + ) + (set! v1-263 #t) + ) + ((< + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (-> s5-0 (-> obj option-index) param2) + ) + (set! + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (-> s5-0 (-> obj option-index) param2) + ) + (set! v1-263 #t) + ) + ) + ) + ((= a0-177 3) + (when (< (-> *setting-control* default screenx) 96) + (set! v1-263 #t) + (+! (-> *setting-control* default screenx) 1) + ) + ) + ) + ) + (when v1-263 + (let ((f30-1 100.0)) + (case (-> s5-0 (-> obj option-index) name) + (((game-text-id music-volume) (game-text-id speech-volume)) + (set! + f30-1 + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + ) + ) + (when + (< + 90 + (- + (-> *display* real-frame-counter) + (-> *progress-state* last-slider-sound) + ) + ) + (set! + (-> *progress-state* last-slider-sound) + (-> *display* real-frame-counter) + ) + (sound-play-by-name + (static-sound-name "slider2001") + (new-sound-id) + (the int (* 10.24 f30-1)) + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + ) + ) + ) + ) + ) + ) + ) + ((or + (logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons square)) + (logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons triangle)) + ) + (cond + ((-> obj selected-option) + (let ((v1-319 (-> s5-0 (-> obj option-index) option-type))) + (cond + ((zero? v1-319) + (set! + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (-> *progress-state* slider-backup) + ) + ) + ((= v1-319 1) + (set! + (-> + (the-as + (pointer int64) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (-> *progress-state* language-backup) + ) + ) + ((= v1-319 2) + (set! + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (-> *progress-state* on-off-backup) + ) + ) + ((= v1-319 3) + (set! + (-> *setting-control* default screenx) + (-> *progress-state* center-x-backup) + ) + (set! + (-> *setting-control* default screeny) + (-> *progress-state* center-y-backup) + ) + ) + ((or (= v1-319 4) (= v1-319 5)) + (set! + (-> + (the-as + (pointer symbol) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + (-> *progress-state* aspect-ratio-backup) + ) + ) + ) + ) + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj selected-option) #f) + ) + ((or + (dummy-32 obj) + (= (-> obj display-state) (progress-screen load-game)) + (= (-> obj display-state) (progress-screen save-game)) + (= (-> obj display-state) (progress-screen save-game-title)) + ) + (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons square)) + (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons square)) + (logclear! + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons triangle) + ) + (logclear! + (-> *cpad-list* cpads 0 button0-rel 0) + (pad-buttons triangle) + ) + (if (= (-> obj display-state) (progress-screen settings)) + (sound-play-by-name + (static-sound-name "menu-stats") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + (load-level-text-files + (-> *level-task-data* (-> obj display-level-index) text-group-index) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + ) + ) + ((or + (logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x)) + (logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle)) + ) + (cond + ((not (-> obj selected-option)) + (cond + ((= (-> s5-0 (-> obj option-index) option-type) 6) + (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons x)) + (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x)) + (logclear! + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons circle) + ) + (logclear! + (-> *cpad-list* cpads 0 button0-rel 0) + (pad-buttons circle) + ) + (push! obj) + (sound-play-by-name + (static-sound-name "select-option") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! + (-> obj next-display-state) + (the-as progress-screen (-> s5-0 (-> obj option-index) param3)) + ) + (case (-> obj next-display-state) + (((progress-screen load-game) + (progress-screen save-game) + (progress-screen save-game-title) + ) + (set! + (-> obj next-display-state) + (dummy-53 obj (-> obj next-display-state)) + ) + ) + ) + ) + ((= (-> s5-0 (-> obj option-index) option-type) 8) + (cond + ((= (-> s5-0 (-> obj option-index) name) (game-text-id exit-demo)) + (set! *master-exit* 'force) + (set-master-mode 'game) + ) + ((= (-> s5-0 (-> obj option-index) name) (game-text-id back)) + (if (= (-> obj display-state) (progress-screen settings)) + (sound-play-by-name + (static-sound-name "menu-stats") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (sound-play-by-name + (static-sound-name "cursor-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + (load-level-text-files + (-> + *level-task-data* + (-> obj display-level-index) + text-group-index + ) + ) + (set! (-> obj next-display-state) (progress-screen invalid)) + ) + ) + ) + ((!= (-> s5-0 (-> obj option-index) option-type) 7) + (let ((v1-427 (-> s5-0 (-> obj option-index) option-type))) + (cond + ((zero? v1-427) + (set! + (-> *progress-state* slider-backup) + (-> + (the-as + (pointer float) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + ) + ((= v1-427 1) + (set! + (-> *progress-state* language-backup) + (the-as + int + (-> + (the-as + (pointer uint64) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + ) + ) + ((= v1-427 2) + (set! + (-> *progress-state* on-off-backup) + (the-as + symbol + (-> + (the-as + (pointer uint32) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + ) + ) + ((= v1-427 3) + (set! + (-> *progress-state* center-x-backup) + (-> *setting-control* default screenx) + ) + (set! + (-> *progress-state* center-y-backup) + (-> *setting-control* default screeny) + ) + ) + ((or (= v1-427 4) (= v1-427 5)) + (set! + (-> *progress-state* aspect-ratio-backup) + (the-as + symbol + (-> + (the-as + (pointer uint32) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + ) + ) + ) + ) + (sound-play-by-name + (static-sound-name "select-option") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons x)) + (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x)) + (logclear! + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons circle) + ) + (logclear! + (-> *cpad-list* cpads 0 button0-rel 0) + (pad-buttons circle) + ) + (set! (-> obj selected-option) #t) + (when (= (-> s5-0 (-> obj option-index) option-type) 1) + (set! + (-> obj language-selection) + (the-as uint (-> *setting-control* current language)) + ) + (set! (-> obj language-direction) #t) + (set! (-> obj language-transition) #f) + (set! (-> obj language-x-offset) 0) + 0 + ) + ) + ) + ) + (else + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj selected-option) #f) + (case (-> s5-0 (-> obj option-index) option-type) + ((4) + (set! + (-> *setting-control* default aspect-ratio) + (the-as + symbol + (-> + (the-as + (pointer uint32) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + ) + ) + ((5) + (case + (-> + (the-as + (pointer uint32) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + + (('pal) + (set! + (-> *setting-control* default video-mode) + (the-as + symbol + (-> + (the-as + (pointer uint32) + (-> s5-0 (-> obj option-index) value-to-modify) + ) + ) + ) + ) + ) + (('ntsc) + (push! obj) + (set! + (-> obj next-display-state) + (progress-screen pal-change-to-60hz) + ) + ) + ) + ) + ((1) + (if (not (-> obj language-transition)) + (load-level-text-files (-> obj display-level-index)) + ) + ) + ) + ) + ) + ) + ) + ) + ) + 0 + (none) + ) + +(defmethod respond-progress progress ((obj progress)) + (when (not (-> obj in-transition)) + (cond + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons up)) + (let ((s5-0 (-> obj display-level-index))) + (set! (-> obj next-level-index) (get-next-level-down s5-0)) + (when (!= s5-0 (-> obj next-level-index)) + (sound-play-by-name + (static-sound-name "cursor-up-down") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj level-transition) 2) + ) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons down)) + (let ((s5-2 (-> obj next-level-index))) + (set! (-> obj next-level-index) (get-next-level-up s5-2)) + (when (!= s5-2 (-> obj next-level-index)) + (sound-play-by-name + (static-sound-name "cursor-up-down") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj level-transition) 1) + ) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons square)) + (when (nonzero? (-> obj display-state)) + (sound-play-by-name + (static-sound-name "select-option") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen fuel-cell)) + (set! (-> obj stat-transition) #t) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons x)) + (when (!= (-> obj display-state) 1) + (sound-play-by-name + (static-sound-name "select-option") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen money)) + (set! (-> obj stat-transition) #t) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons triangle)) + (when (!= (-> obj display-state) 2) + (sound-play-by-name + (static-sound-name "select-option") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set! (-> obj next-display-state) (progress-screen buzzer)) + (set! (-> obj stat-transition) #t) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle)) + (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons circle)) + (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons circle)) + (sound-play-by-name + (static-sound-name "start-options") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (push! obj) + (set! (-> obj next-display-state) (progress-screen settings)) + ) + ((= (-> obj display-state) (progress-screen fuel-cell)) + (cond + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons left)) + (let ((s5-8 (-> obj task-index))) + (set! + (-> obj task-index) + (get-next-task-down (-> obj task-index) (-> obj display-level-index)) + ) + (if (!= s5-8 (-> obj task-index)) + (sound-play-by-name + (static-sound-name "cursor-l-r") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons right)) + (let ((s5-10 (-> obj task-index))) + (set! + (-> obj task-index) + (get-next-task-up (-> obj task-index) (-> obj display-level-index)) + ) + (if (!= s5-10 (-> obj task-index)) + (sound-play-by-name + (static-sound-name "cursor-l-r") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + ) + ) + ) + ) + ) + ) + ) + (none) + ) + +(defstate progress-normal (progress) + :event + (behavior ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) + (local-vars (v0-0 none)) + (let ((v1-0 arg2)) + (the-as object (cond + ((= v1-0 'go-away) + (go progress-going-out) + ) + ((= v1-0 'notify) + (cond + ((= (-> arg3 param 0) 'done) + (case (-> self display-state) + (((progress-screen memcard-saving)) + (cond + ((= + (-> self display-state-stack 0) + (progress-screen title) + ) + (let + ((gp-1 (-> *setting-control* default auto-save))) + (sound-volume-off) + (set! (-> *game-info* mode) 'play) + (initialize! + *game-info* + 'game + (the-as game-save #f) + "intro-start" + ) + (set! + (-> *setting-control* default auto-save) + gp-1 + ) + ) + (set-master-mode 'game) + ) + (else + (set! v0-0 (the-as none -1)) + (set! + (-> self next-display-state) + (the-as progress-screen v0-0) + ) + v0-0 + ) + ) + ) + (((progress-screen memcard-formatting)) + (set! (-> self force-transition) #t) + (set! v0-0 (the-as none 15)) + (set! + (-> self next-display-state) + (the-as progress-screen v0-0) + ) + v0-0 + ) + (((progress-screen memcard-creating)) + (cond + ((= + (-> self display-state-stack 0) + (progress-screen title) + ) + (set! v0-0 (the-as none 18)) + (set! + (-> self next-display-state) + (the-as progress-screen v0-0) + ) + ) + (else + (set! v0-0 (the-as none 17)) + (set! + (-> self next-display-state) + (the-as progress-screen v0-0) + ) + ) + ) + v0-0 + ) + ) + ) + ((= (-> arg3 param 0) 'error) + (let ((t9-4 format) + (a0-17 #t) + (a1-2 "ERROR NOTIFY: ~S ~D~%") + (v1-13 (-> arg3 param 1)) + ) + (t9-4 a0-17 a1-2 (cond + ((= v1-13 17) + "no-auto-save" + ) + ((= v1-13 16) + "no-process" + ) + ((= v1-13 15) + "bad-version" + ) + ((= v1-13 14) + "no-space" + ) + ((= v1-13 13) + "no-save" + ) + ((= v1-13 12) + "no-file" + ) + ((= v1-13 11) + "no-format" + ) + ((= v1-13 10) + "no-last" + ) + ((= v1-13 9) + "no-card" + ) + ((= v1-13 8) + "no-memory" + ) + ((= v1-13 7) + "new-game" + ) + ((= v1-13 6) + "read-error" + ) + ((= v1-13 5) + "write-error" + ) + ((= v1-13 4) + "internal-error" + ) + ((= v1-13 3) + "format-failed" + ) + ((= v1-13 2) + "bad-handle" + ) + ((= v1-13 1) + "ok" + ) + ((zero? v1-13) + "busy" + ) + (else + "*unknown*" + ) + ) + (-> self display-state) + ) + ) + (case (-> arg3 param 1) + ((14) + (set! v0-0 (the-as none 7)) + (set! + (-> self next-display-state) + (the-as progress-screen v0-0) + ) + v0-0 + ) + (else + (case (-> self display-state) + (((progress-screen memcard-formatting)) + (set! v0-0 (the-as none 24)) + (set! + (-> self next-display-state) + (the-as progress-screen v0-0) + ) + v0-0 + ) + (((progress-screen memcard-creating)) + (set! v0-0 (the-as none 25)) + (set! + (-> self next-display-state) + (the-as progress-screen v0-0) + ) + v0-0 + ) + (((progress-screen memcard-saving)) + (set! v0-0 (the-as none 21)) + (set! + (-> self next-display-state) + (the-as progress-screen v0-0) + ) + v0-0 + ) + (((progress-screen memcard-loading)) + (set! v0-0 (the-as none 20)) + (set! + (-> self next-display-state) + (the-as progress-screen v0-0) + ) + v0-0 + ) + ) + ) + ) + ) + ) + ) + ) + ) + ) + ) + :code + (behavior () + (while #t + (when + (and + (logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons l1)) + (logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons r1)) + *cheat-mode* + ) + (when + (and + (< + (-> self task-index) + (-> *level-task-data* (-> self display-level-index) nb-of-tasks) + ) + (>= (-> self task-index) 0) + ) + (let + ((gp-0 + (-> + *level-task-data* + (-> self display-level-index) + task-info + (-> self task-index) + task-id + ) + ) + ) + (close-specific-task! gp-0 (task-status need-resolution)) + (let ((a1-3 (new 'stack-no-clear 'event-message-block))) + (set! (-> a1-3 from) self) + (set! (-> a1-3 num-params) 2) + (set! (-> a1-3 message) 'get-pickup) + (set! (-> a1-3 param 0) (the-as uint 6)) + (set! (-> a1-3 param 1) (the-as uint (the float gp-0))) + (send-event-function *target* a1-3) + ) + ) + ) + ) + (if + (and + (= (-> self display-state) (-> self next-display-state)) + (= (-> self display-level-index) (-> self next-level-index)) + ) + (set! + (-> self transition-offset) + (seekl + (-> self transition-offset) + 0 + (* + (the + int + (* (-> self transition-speed) (-> *display* time-adjust-ratio)) + ) + (if (or (-> self stat-transition) (nonzero? (-> self level-transition))) + 2 + 1 + ) + ) + ) + ) + (set! + (-> self transition-offset) + (seekl + (-> self transition-offset) + 512 + (* + (the + int + (* (-> self transition-speed) (-> *display* time-adjust-ratio)) + ) + (if (or (-> self stat-transition) (nonzero? (-> self level-transition))) + 2 + 1 + ) + ) + ) + ) + ) + (set-transition-progress! self (-> self transition-offset)) + (set! + (-> self in-transition) + (or (-> self force-transition) (nonzero? (-> self transition-offset))) + ) + (when + (and + (not (handle->process (-> *game-info* auto-save-proc))) + (or (-> self force-transition) (-> self in-transition)) + (>= + (-> self transition-offset) + (if + (and + (zero? (-> self level-transition)) + (nonzero? (-> self next-display-state)) + (!= (-> self next-display-state) 1) + (!= (-> self next-display-state) 2) + ) + 512 + 256 + ) + ) + ) + (if (>= (the-as int (-> self next-display-state)) 0) + (enter! self (-> self next-display-state) 0) + (pop! self) + ) + (set! (-> self display-level-index) (-> self next-level-index)) + (when (nonzero? (-> self level-transition)) + (set! + (-> self task-index) + (get-next-task-up -1 (-> self display-level-index)) + ) + (case (-> self level-transition) + ((1) + (set! (-> self level-transition) 2) + ) + ((2) + (set! (-> self level-transition) 1) + ) + ) + ) + (set! (-> self force-transition) #f) + ) + (when (zero? (-> self transition-offset)) + (set! (-> self stat-transition) #f) + (set! (-> self level-transition) 0) + 0 + ) + (let ((gp-1 #f)) + (let ((v1-62 #f)) + (case (-> self display-state) + (((progress-screen fuel-cell) + (progress-screen money) + (progress-screen buzzer) + ) + (let ((s5-0 (-> self display-level-index))) + (when + (and + (< (mod (-> *display* real-frame-counter) 60) 30) + (zero? (-> *progress-process* 0 in-out-position)) + (not (-> self in-transition)) + (zero? (-> self transition-offset)) + ) + (set! gp-1 (!= s5-0 (get-next-level-up s5-0))) + (set! v1-62 (!= s5-0 (get-next-level-down s5-0))) + ) + ) + ) + ) + (set! (-> self particles 3 init-pos x) (the float (if v1-62 + (- + 195 + (-> + *progress-process* + 0 + left-x-offset + ) + ) + -320 + ) + ) + ) + ) + (set! (-> self particles 4 init-pos x) (the float (if gp-1 + (- + 195 + (-> + *progress-process* + 0 + left-x-offset + ) + ) + -320 + ) + ) + ) + ) + (dummy-29 self) + (set! + (-> self next-display-state) + (dummy-53 self (-> self next-display-state)) + ) + (let ((v1-74 (-> self display-state))) + (cond + ((or + (= v1-74 (progress-screen fuel-cell)) + (or + (= v1-74 (progress-screen money)) + (= v1-74 (progress-screen buzzer)) + ) + ) + (respond-progress self) + ) + ((or + (= v1-74 (progress-screen memcard-no-space)) + (= v1-74 (progress-screen memcard-format)) + (= v1-74 (progress-screen memcard-data-exists)) + (= v1-74 (progress-screen memcard-insert)) + (= v1-74 (progress-screen load-game)) + (= v1-74 (progress-screen save-game)) + (= v1-74 (progress-screen save-game-title)) + (= v1-74 (progress-screen memcard-error-loading)) + (= v1-74 (progress-screen memcard-error-saving)) + (= v1-74 (progress-screen memcard-error-formatting)) + (= v1-74 (progress-screen memcard-error-creating)) + (= v1-74 (progress-screen memcard-auto-save-error)) + (= v1-74 (progress-screen memcard-removed)) + (= v1-74 (progress-screen memcard-no-data)) + (= v1-74 (progress-screen memcard-not-inserted)) + (= v1-74 (progress-screen memcard-not-formatted)) + (= v1-74 (progress-screen auto-save)) + (= v1-74 (progress-screen pal-change-to-60hz)) + (= v1-74 (progress-screen pal-now-60hz)) + (= v1-74 (progress-screen no-disc)) + (= v1-74 (progress-screen bad-disc)) + (= v1-74 (progress-screen quit)) + ) + (dummy-31 self) + ) + ) + ) + (suspend) + ) + (none) + ) + :post + (behavior () + (let* ((a1-0 (-> self display-level-index)) + (gp-0 (-> *level-task-data* a1-0)) + ) + #t + (let ((s5-0 #f)) + (case (-> self display-state) + (((progress-screen fuel-cell)) + (set! s5-0 #t) + (draw-fuel-cell-screen self a1-0) + ) + (((progress-screen money)) + (set! s5-0 #t) + (draw-money-screen self a1-0) + ) + (((progress-screen buzzer)) + (set! s5-0 #t) + (draw-buzzer-screen self a1-0) + ) + (((progress-screen game-settings) (progress-screen settings)) + (hide-progress-icons) + (draw-options self 115 30 0.82) + ) + (((progress-screen graphic-settings) + (progress-screen sound-settings) + (progress-screen settings-title) + (progress-screen title) + ) + (hide-progress-icons) + (draw-options self 115 30 0.82) + ) + (((progress-screen memcard-removed) + (progress-screen memcard-auto-save-error) + ) + (draw-notice-screen self) + (draw-options self 192 0 0.82) + ) + (((progress-screen memcard-no-data)) + (draw-notice-screen self) + (draw-options self 165 0 0.82) + ) + (((progress-screen memcard-format)) + (draw-notice-screen self) + (draw-options self 172 0 0.82) + ) + (((progress-screen memcard-no-space) + (progress-screen memcard-not-inserted) + (progress-screen memcard-not-formatted) + ) + (draw-notice-screen self) + (draw-options self 195 0 0.82) + ) + (((progress-screen memcard-error-loading) + (progress-screen memcard-error-saving) + (progress-screen memcard-error-formatting) + (progress-screen memcard-error-creating) + (progress-screen memcard-auto-save-error) + ) + (draw-notice-screen self) + (draw-options self 190 0 0.82) + ) + (((progress-screen pal-change-to-60hz)) + (draw-notice-screen self) + (draw-options self 190 0 0.82) + ) + (((progress-screen pal-now-60hz)) + (when + (< + 3000 + (- + (-> *display* real-frame-counter) + (the-as int (-> self video-mode-timeout)) + ) + ) + (set! (-> *progress-state* video-mode-choice) 'pal) + (set! + (-> *setting-control* default video-mode) + (-> *progress-state* video-mode-choice) + ) + (set! (-> self next-display-state) (progress-screen invalid)) + ) + (draw-notice-screen self) + (draw-options self 140 0 0.82) + ) + (((progress-screen no-disc) (progress-screen bad-disc)) + (draw-notice-screen self) + (if (is-cd-in?) + (draw-options self 170 0 0.82) + ) + ) + (((progress-screen quit)) + (draw-notice-screen self) + (draw-options self 110 0 0.82) + ) + (((progress-screen auto-save)) + (draw-notice-screen self) + (draw-options self 190 0 0.82) + ) + (((progress-screen memcard-insert)) + (draw-notice-screen self) + (draw-options self 165 0 0.82) + ) + (((progress-screen memcard-data-exists)) + (draw-notice-screen self) + (draw-options self 168 0 0.82) + ) + (((progress-screen memcard-loading) + (progress-screen memcard-saving) + (progress-screen memcard-formatting) + (progress-screen memcard-creating) + ) + (draw-notice-screen self) + ) + (((progress-screen load-game) (progress-screen save-game)) + (draw-notice-screen self) + (draw-options self 190 0 0.82) + ) + (((progress-screen save-game-title)) + (draw-notice-screen self) + (draw-options self 169 15 0.6) + ) + ) + (when s5-0 + (let* ((v1-98 (cond + ((-> self stat-transition) + 0 + ) + ((= (-> self level-transition) 1) + (- (-> self transition-offset)) + ) + (else + (-> self transition-offset) + ) + ) + ) + (f30-0 (the-as float (if (-> self stat-transition) + 1.0 + (-> self transition-percentage-invert) + ) + ) + ) + (s5-1 + (new + 'stack + 'font-context + *font-default-matrix* + (- 32 (-> self left-x-offset)) + (the int (* (+ 42.0 (the float (/ v1-98 2))) f30-0)) + 8325000.0 + (font-color lighter-lighter-blue) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-103 s5-1)) + (set! (-> v1-103 width) (the float 328)) + ) + (let ((v1-104 s5-1)) + (set! (-> v1-104 height) (the float 45)) + ) + (set! (-> s5-1 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (-> gp-0 level-name-id) #f) + f30-0 + s5-1 + (the int (* 128.0 f30-0)) + ) + ) + ) + ) + ) + (case (-> self display-state) + (((progress-screen fuel-cell) + (progress-screen money) + (progress-screen buzzer) + ) + (draw-progress self) + ) + ) + (adjust-sprites self) + (adjust-icons self) + (none) + ) + ) + +(defstate progress-coming-in (progress) + :event + (-> progress-waiting event) + :enter + (behavior () + (sound-group-pause (the-as uint 255)) + (logclear! (-> *setting-control* default process-mask) (process-mask pause menu)) + (push-setting! + *setting-control* + self + (the-as (function object object object object object) 'process-mask) + 'set + 0.0 + 16 + ) + (copy-settings-from-target! *setting-control*) + (sound-play-by-name + (static-sound-name "select-menu") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (set-blackout-frames 0) + (set! *pause-lock* #f) + (none) + ) + :code + (behavior () + (loop + (seekl! (-> self in-out-position) 0 (the int (* 170.0 (-> *display* time-adjust-ratio)))) + (when (< (-> self in-out-position) 2867) + (seekl! (-> self transition-offset) 0 (the int (* (-> self transition-speed) (-> *display* time-adjust-ratio)))) + (set-transition-progress! self (-> self transition-offset)) + ) + (if (zero? (-> self in-out-position)) + (go progress-normal) + ) + (suspend) + ) + (none) + ) + :post (-> progress-normal post) + ) + +(defstate progress-going-out (progress) + :enter + (behavior () + (sound-play-by-name + (static-sound-name "menu-close") + (new-sound-id) + 1024 + 0 + 0 + (the-as uint 1) + (the-as vector #t) + ) + (hide-progress-icons) + (set! (-> self particles 3 init-pos x) -320.0) + (set! (-> self particles 4 init-pos x) -320.0) + (case (-> self display-state) + (((progress-screen load-game) + (progress-screen save-game) + (progress-screen save-game-title) + ) + (set! (-> self transition-speed) 30.0) + ) + ) + (none) + ) + :code + (behavior () + (while #t + (set! + (-> self transition-offset) + (seekl + (-> self transition-offset) + 512 + (the int (* (-> self transition-speed) (-> *display* time-adjust-ratio))) + ) + ) + (set-transition-progress! self (-> self transition-offset)) + (when (< 153 (-> self transition-offset)) + (set! + (-> self in-out-position) + (seekl + (-> self in-out-position) + 4096 + (the int (* 170.0 (-> *display* time-adjust-ratio))) + ) + ) + (if (= (-> self in-out-position) 4096) + (go progress-gone) + ) + ) + (suspend) + ) + (none) + ) + :post + (-> progress-normal post) + ) + +(defstate progress-debug (progress) + :event + (behavior ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) + (let ((v1-0 arg2)) + (the-as object (if (= v1-0 'go-away) + (go progress-going-out) + ) + ) + ) + ) + :code + (behavior () + (while #t + (cond + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons left)) + (if (> (-> self current-debug-string) 0) + (+! (-> self current-debug-string) -1) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons right)) + (if (< (-> self current-debug-string) (+ (-> *common-text* length) -1)) + (+! (-> self current-debug-string) 1) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons up)) + (when (> (-> self current-debug-group) 0) + (+! (-> self current-debug-group) -1) + (set! (-> self current-debug-string) 0) + 0 + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons down)) + (when + (< (-> self current-debug-group) (+ (-> *text-group-names* length) -1)) + (+! (-> self current-debug-group) 1) + (set! (-> self current-debug-string) 0) + 0 + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons l1)) + (if (> (the-as int (-> *setting-control* default language)) 0) + (+! (-> *setting-control* default language) -1) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons r1)) + (if (< (the-as int (-> *setting-control* default language)) 6) + (+! (-> *setting-control* default language) 1) + ) + ) + ((logtest? (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons l2)) + (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons l2)) + (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons l2)) + (go progress-normal) + ) + ) + (load-game-text-info + (-> *text-group-names* (-> self current-debug-group)) + '*common-text* + *common-text-heap* + ) + (suspend) + ) + (none) + ) + :post + (behavior () + (let* ((s5-0 (-> *display* frames (-> *display* on-screen) frame global-buf)) + (gp-0 (-> s5-0 base)) + ) + (let ((s4-0 draw-string-xy)) + (let ((s3-0 format) + (a0-4 (clear *temp-string*)) + (a1-0 "TEXT DEBUG: LANGUAGE ~S ID 0x~X") + (v1-4 (-> *setting-control* current language)) + ) + (s3-0 a0-4 a1-0 (cond + ((= v1-4 (language-enum uk-english)) + "uk-english" + ) + ((= v1-4 (language-enum japanese)) + "japanese" + ) + ((= v1-4 (language-enum italian)) + "italian" + ) + ((= v1-4 (language-enum spanish)) + "spanish" + ) + ((= v1-4 (language-enum german)) + "german" + ) + ((= v1-4 (language-enum french)) + "french" + ) + ((= v1-4 (language-enum english)) + "english" + ) + (else + "*unknown*" + ) + ) + (-> *common-text* data (-> self current-debug-string) id) + ) + ) + (s4-0 + *temp-string* + s5-0 + 40 + 40 + (font-color default) + (font-flags shadow kerning) + ) + ) + (let ((a3-4 (-> s5-0 base))) + (let ((v1-7 (the-as dma-packet (-> s5-0 base)))) + (set! (-> v1-7 dma) (new 'static 'dma-tag :id (dma-tag-id next))) + (set! (-> v1-7 vif0) (new 'static 'vif-tag)) + (set! (-> v1-7 vif1) (new 'static 'vif-tag)) + (set! (-> s5-0 base) (&+ (the-as pointer v1-7) 16)) + ) + (dma-bucket-insert-tag + (-> *display* frames (-> *display* on-screen) frame bucket-group) + (bucket-id debug-draw0) + gp-0 + (the-as (pointer dma-tag) a3-4) + ) + ) + ) + (let* ((s5-1 (-> *display* frames (-> *display* on-screen) frame global-buf)) + (gp-1 (-> s5-1 base)) + ) + (let ((s4-1 draw-string-xy)) + (format (clear *temp-string*) "USE LEFT/RIGHT TO SELECT STRING") + (s4-1 + *temp-string* + s5-1 + 40 + 155 + (font-color default) + (font-flags shadow kerning) + ) + ) + (let ((a3-6 (-> s5-1 base))) + (let ((v1-16 (the-as dma-packet (-> s5-1 base)))) + (set! (-> v1-16 dma) (new 'static 'dma-tag :id (dma-tag-id next))) + (set! (-> v1-16 vif0) (new 'static 'vif-tag)) + (set! (-> v1-16 vif1) (new 'static 'vif-tag)) + (set! (-> s5-1 base) (the-as pointer (the-as dma-packet (&+ v1-16 16)))) + ) + (dma-bucket-insert-tag + (-> *display* frames (-> *display* on-screen) frame bucket-group) + (bucket-id debug-draw0) + gp-1 + (the-as (pointer dma-tag) a3-6) + ) + ) + ) + (let* ((s5-2 (-> *display* frames (-> *display* on-screen) frame global-buf)) + (gp-2 (-> s5-2 base)) + ) + (let ((s4-2 draw-string-xy)) + (format (clear *temp-string*) "USE UP/DOWN TO SELECT GROUP") + (s4-2 + *temp-string* + s5-2 + 40 + 165 + (font-color default) + (font-flags shadow kerning) + ) + ) + (let ((a3-8 (-> s5-2 base))) + (let ((v1-25 (the-as dma-packet (-> s5-2 base)))) + (set! (-> v1-25 dma) (new 'static 'dma-tag :id (dma-tag-id next))) + (set! (-> v1-25 vif0) (new 'static 'vif-tag)) + (set! (-> v1-25 vif1) (new 'static 'vif-tag)) + (set! (-> s5-2 base) (the-as pointer (the-as dma-packet (&+ v1-25 16)))) + ) + (dma-bucket-insert-tag + (-> *display* frames (-> *display* on-screen) frame bucket-group) + (bucket-id debug-draw0) + gp-2 + (the-as (pointer dma-tag) a3-8) + ) + ) + ) + (let* ((s5-3 (-> *display* frames (-> *display* on-screen) frame global-buf)) + (gp-3 (-> s5-3 base)) + ) + (let ((s4-3 draw-string-xy)) + (format (clear *temp-string*) "USE L1/R1 TO SELECT LANGUAGE") + (s4-3 + *temp-string* + s5-3 + 40 + 175 + (font-color default) + (font-flags shadow kerning) + ) + ) + (let ((a3-10 (-> s5-3 base))) + (let ((v1-34 (the-as dma-packet (-> s5-3 base)))) + (set! (-> v1-34 dma) (new 'static 'dma-tag :id (dma-tag-id next))) + (set! (-> v1-34 vif0) (new 'static 'vif-tag)) + (set! (-> v1-34 vif1) (new 'static 'vif-tag)) + (set! (-> s5-3 base) (the-as pointer (the-as dma-packet (&+ v1-34 16)))) + ) + (dma-bucket-insert-tag + (-> *display* frames (-> *display* on-screen) frame bucket-group) + (bucket-id debug-draw0) + gp-3 + (the-as (pointer dma-tag) a3-10) + ) + ) + ) + (let + ((gp-4 + (new + 'stack + 'font-context + *font-default-matrix* + 32 + 50 + 0.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-42 gp-4)) + (set! (-> v1-42 width) (the float 328)) + ) + (let ((v1-43 gp-4)) + (set! (-> v1-43 height) (the float 100)) + ) + (logior! (-> gp-4 flags) (font-flags shadow kerning large)) + (draw-debug-text-box gp-4) + (print-game-text + (-> *common-text* data (-> self current-debug-string) text) + gp-4 + #f + 128 + 22 + ) + ) + (none) + ) + ) + + diff --git a/goal_src/engine/ui/text-h.gc b/goal_src/engine/ui/text-h.gc index 643eca1dab..691e856776 100644 --- a/goal_src/engine/ui/text-h.gc +++ b/goal_src/engine/ui/text-h.gc @@ -21,6 +21,9 @@ (vibrations #x10e) (play-hints #x10f) (center-screen #x110) + (on #x111) + (off #x112) + (move-dpad #x113) (english #x114) (french #x115) (german #x116) @@ -32,22 +35,71 @@ (game-options #x127) (graphic-options #x128) (sound-options #x129) - + (4x3 #x12a) + (16x9 #x12b) + (60hz #x12c) + (50hz #x12d) + (game-title #x12e) (hidden-power-cell #x12f) ;; why is this here?? - + (memcard-no-space #x130) + (memcard-not-inserted #x131) + (card-not-formatted-title #x132) + (memcard-space-requirement1 #x133) + (memcard-space-requirement2 #x134) + (card-not-formatted-msg #x135) (saving-data #x136) + (loading-data #x137) (do-not-remove-mem-card #x138) + (overwrite? #x139) + (format? #x13a) - (continue-without-saving #x13f) + (yes #x13c) + (no #x13d) (back #x13e) + (continue-without-saving #x13f) + (select-file-to-save #x140) + (select-file-to-load #x141) + (save-data-already-exists #x142) + (insert-memcard #x143) + (continue? #x144) (load-game #x14b) (save-game #x14c) + (formatting #x14d) + (creating-save-data #x14e) + (empty #x14f) (options #x150) + (error-loading #x151) + (error-saving #x152) + (error-formatting #x153) + (error-creating-data #x154) + (memcard-removed #x156) + (autosave-disabled-title #x157) + (autosave-disabled-msg #x158) + (no-save-data #x159) + (create-save-data? #x15a) + (check-memcard #x15b) (new-game #x15c) + (back? #x15d) (ok #x15e) (exit-demo #x15f) + (autosave-warn-title #x160) + (autosave-warn-msg #x161) + (task-completed #x162) + (check-memcard-and-retry #x163) + (screen-change-to-60hz #x164) + (screen-60hz-warn-support #x165) + (screen-60hz-warn-timer #x166) + (screen-now-60hz #x167) + (screen-60hz-keep? #x168) + (warp-gate-use-dpad #x169) + (no-disc-title #x16a) + (no-disc-msg #x16b) + (bad-disc-title #x16c) + (bad-disc-msg #x16d) (press-start #x16e) (quit-game #x16f) + (quit? #x170) + (total-collected #x171) (village1-mayor-money #x200) (vollage1-uncle-money #x201) @@ -239,3 +291,9 @@ ;; will store the COMMON text when it is loaded. (define *common-text* (the-as game-text-info #f)) + + +(defun-extern print-game-text string font-context symbol int int float) + + + diff --git a/goal_src/engine/ui/text.gc b/goal_src/engine/ui/text.gc index 8a53fb2c10..b090e1d8df 100644 --- a/goal_src/engine/ui/text.gc +++ b/goal_src/engine/ui/text.gc @@ -140,7 +140,7 @@ (local-vars (v0-2 int) (heap-sym-heap game-text-info) - (lang int) + (lang language-enum) (load-status int) (heap-free int) ) @@ -149,13 +149,13 @@ (set! load-status 0) (set! heap-free (&- (-> heap top) (the-as uint (-> heap base)))) ;; english -> UK english in PAL (I think?) - (if (and (= (scf-get-territory) 1) (zero? lang)) - (set! lang 6) + (if (and (= (scf-get-territory) GAME_TERRITORY_SCEE) (= lang (language-enum english))) + (set! lang (language-enum uk-english)) ) ;; only load if we actually need to (when (or (= heap-sym-heap #f) ;; nothing loaded - (!= (-> heap-sym-heap language-id) lang) ;; loaded, but wrong lang + (!= (-> heap-sym-heap language-id) (the-as uint lang)) ;; loaded, but wrong lang (not (string= (-> heap-sym-heap group-name) txt-name)) ;; loaded, but wrong group ) diff --git a/goal_src/goal-lib.gc b/goal_src/goal-lib.gc index d2c88d822b..a1d16aafa6 100644 --- a/goal_src/goal-lib.gc +++ b/goal_src/goal-lib.gc @@ -475,6 +475,13 @@ `(neq? ,thing 0) ) +(defmacro not! (var) + `(set! ,var (not ,var))) +(defmacro true! (var) + `(set! ,var #t)) +(defmacro false! (var) + `(set! ,var #f)) + (defmacro minmax (val minval maxval) `(max (min ,val ,maxval) ,minval) ) diff --git a/goal_src/goos-lib.gs b/goal_src/goos-lib.gs index 1ca26fca2b..e136225872 100644 --- a/goal_src/goos-lib.gs +++ b/goal_src/goos-lib.gs @@ -119,12 +119,19 @@ (#t (filter pred (cdr lst))))) (desfun assoc (x a) - (if (eq? (caar a) x) - (car a) - (assoc x (cdr a)) - ) + (if (null? a) + '() + (if (eq? (caar a) x) + (car a) + (assoc x (cdr a)) + ) + ) ) +(desfun list (&rest items) + (apply (lambda (x) x) items) + ) + (desfun reverse (lst) (if (null? lst) '() diff --git a/goal_src/kernel-defs.gc b/goal_src/kernel-defs.gc index d4d4e04b2e..45eddae88a 100644 --- a/goal_src/kernel-defs.gc +++ b/goal_src/kernel-defs.gc @@ -124,6 +124,17 @@ (no-auto-save 17) ) +(defenum language-enum + :type int64 + (english) + (french) + (german) + (spanish) + (italian) + (japanese) + (uk-english) + ) + (define-extern mc-run (function none)) (define-extern mc-format (function int mc-status-code)) (define-extern mc-unformat (function int mc-status-code)) @@ -136,7 +147,7 @@ (define-extern mc-check-result (function int)) ;; mc-makefile -(define-extern kset-language (function int int)) +(define-extern kset-language (function language-enum int)) (define-extern *debug-segment* symbol) (define-extern *enable-method-set* int) @@ -182,12 +193,17 @@ ;; file-stream-seek (define-extern file-stream-read (function file-stream pointer int int)) (define-extern file-stream-write (function file-stream pointer uint uint)) -(define-extern scf-get-language (function uint)) + +(defconstant GAME_TERRITORY_SCEA 0) +(defconstant GAME_TERRITORY_SCEE 1) +(defconstant GAME_TERRITORY_SCEI 2) + +(define-extern scf-get-language (function language-enum)) (declare-type scf-time structure) (define-extern scf-get-time (function scf-time none)) (define-extern scf-get-aspect (function uint)) (define-extern scf-get-volume (function int)) -(define-extern scf-get-territory (function int)) +(define-extern scf-get-territory (function int)) ;; not actually a scf function... (define-extern scf-get-timeout (function int)) (define-extern scf-get-inactive-timeout (function int)) ;; dma-to-iop diff --git a/goal_src/kernel/gkernel-h.gc b/goal_src/kernel/gkernel-h.gc index 4380b319b0..4b3ae68119 100644 --- a/goal_src/kernel/gkernel-h.gc +++ b/goal_src/kernel/gkernel-h.gc @@ -455,7 +455,7 @@ (deftype state (protect-frame) ((code function :offset-assert 16) (trans (function none) :offset-assert 20) - (post (function none) :offset-assert 24) + (post function :offset-assert 24) (enter function :offset-assert 28) (event (function process int symbol event-message-block object) :offset-assert 32) ) diff --git a/goal_src/kernel/gstate.gc b/goal_src/kernel/gstate.gc index 1bc1cf2728..cad4cbf893 100644 --- a/goal_src/kernel/gstate.gc +++ b/goal_src/kernel/gstate.gc @@ -92,31 +92,31 @@ It type checks the arguments for the entry function. ) ) -(defmacro make-function-process (dead-pool new-pool proc-type func &key (name #f) &key (stack-size #x4000) &key (stack *kernel-dram-stack*) &rest args) +(defmacro make-function-process (proc-type func &key (from *default-dead-pool*) &key (to *default-pool*) &key (name #f) &key (stack-size #x4000) &key (stack *kernel-dram-stack*) &rest args) "Start a new process that runs a function on its main thread. Returns a pointer to the new process (or #f? on error)." (with-gensyms (new-proc) - `(let ((,new-proc (the-as ,proc-type (get-process ,dead-pool ,proc-type ,stack-size)))) + `(let ((,new-proc (the-as ,proc-type (get-process ,from ,proc-type ,stack-size)))) (when ,new-proc - ((method-of-type ,proc-type activate) ,new-proc ,new-pool ,(if name name `(quote ,proc-type)) ,stack) + ((method-of-type ,proc-type activate) ,new-proc ,to ,(if name name `(quote ,proc-type)) ,stack) (run-next-time-in-process ,new-proc ,func ,@args) - (-> ,new-proc ppointer) + (the (pointer ,proc-type) (-> ,new-proc ppointer)) ) ) ) ) -(defmacro make-init-process (dead-pool new-pool proc-type func &key (name #f) &key (stack-size #x4000) &key (stack *kernel-dram-stack*) &rest args) +(defmacro make-init-process (proc-type func &key (from *default-dead-pool*) &key (to *default-pool*) &key (name #f) &key (stack-size #x4000) &key (stack *kernel-dram-stack*) &rest args) "Start a new process and run an init function on it. Returns a pointer to the new process, or #f (or is it 0?) if something goes wrong." (with-gensyms (new-proc) - `(let ((,new-proc (the-as ,proc-type (get-process ,dead-pool ,proc-type ,stack-size)))) + `(let ((,new-proc (the-as ,proc-type (get-process ,from ,proc-type ,stack-size)))) (when ,new-proc - ((method-of-type ,proc-type activate) ,new-proc ,new-pool ,(if name name `(quote ,proc-type)) ,stack) + ((method-of-type ,proc-type activate) ,new-proc ,to ,(if name name `(quote ,proc-type)) ,stack) (run-now-in-process ,new-proc ,func ,@args) - (-> ,new-proc ppointer) + (the (pointer ,proc-type) (-> ,new-proc ppointer)) ) ) ) @@ -136,7 +136,10 @@ It type checks the arguments for the entry function. (push! *defstate-type-stack* beh-type) ) ) - +(defmacro clear-def-state-stack () + (set! *defstate-type-stack* '()) + `(none) + ) (defmacro defstate (state-name parents &key (virtual #f) &key (event #f) @@ -151,9 +154,34 @@ It type checks the arguments for the entry function. (with-gensyms (new-state) (let ((defstate-type (first parents))) (when (not (null? *defstate-type-stack*)) - (ferror "*defstate-type-stack* leaked! An error probably happened in a previous defstate. stack is: {}" *defstate-type-stack*) + (fmt #t "*defstate-type-stack* leaked! An error probably happened in a previous defstate. stack is: {}" + *defstate-type-stack*) ) (set! *defstate-type-stack* '()) + ;; check for default handlers + (let ((default-handlers (assoc defstate-type *default-state-handlers*))) + (when (not (null? default-handlers)) + (set! default-handlers (cdr default-handlers)) + (when (and (not event) (car default-handlers)) + (set! event (car default-handlers))) + (set! default-handlers (cdr default-handlers)) + (when (and (not enter) (car default-handlers)) + (set! enter (car default-handlers))) + (set! default-handlers (cdr default-handlers)) + (when (and (not trans) (car default-handlers)) + (set! trans (car default-handlers))) + (set! default-handlers (cdr default-handlers)) + (when (and (not exit) (car default-handlers)) + (set! exit (car default-handlers))) + (set! default-handlers (cdr default-handlers)) + (when (and (not code) (car default-handlers)) + (set! code (car default-handlers))) + (set! default-handlers (cdr default-handlers)) + (when (and (not post) (car default-handlers)) + (set! post (car default-handlers))) + (set! default-handlers (cdr default-handlers)) + ) + ) (def-state-check-behavior event defstate-type) (def-state-check-behavior enter defstate-type) (def-state-check-behavior trans defstate-type) @@ -193,6 +221,22 @@ It type checks the arguments for the entry function. ) ) +;; set the default handler functions for a process's state handlers +(seval (define *default-state-handlers* '())) +(defmacro defstatehandler (proc + &key (event #f) + &key (enter #f) + &key (trans #f) + &key (exit #f) + &key (code #f) + &key (post #f)) + (if (null? (assoc proc *default-state-handlers*)) + (push! *default-state-handlers* (cons proc (list event enter trans exit code post))) + (fmt #t "default state handlers for {} already defined, ignoring duplicate.\n" proc (cadr (assoc proc *default-state-handlers*))) + ) + `(none) + ) + (defmethod new state ((allocation symbol) (type-to-make type) diff --git a/goal_src/levels/beach/mayor.gc b/goal_src/levels/beach/mayor.gc index 1892acafdd..d5e70b0bd1 100644 --- a/goal_src/levels/beach/mayor.gc +++ b/goal_src/levels/beach/mayor.gc @@ -2165,7 +2165,7 @@ (behavior () (let ((t9-0 (-> (method-of-type process-taskable idle) post))) (if t9-0 - (t9-0) + ((the-as (function none) t9-0)) ) ) (dummy-45 (-> self root-override)) diff --git a/goal_src/levels/village1/assistant.gc b/goal_src/levels/village1/assistant.gc index 66753f818b..0e069ad294 100644 --- a/goal_src/levels/village1/assistant.gc +++ b/goal_src/levels/village1/assistant.gc @@ -1087,7 +1087,7 @@ (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'check-drop-level-assistant + :sym 'check-drop-level-assistant ) (new 'static 'sp-field-init-spec :field #x3a diff --git a/goal_src/pc_debug/pc-pad-utils.gc b/goal_src/pc_debug/pc-pad-utils.gc index 325852d47b..2f925ba882 100644 --- a/goal_src/pc_debug/pc-pad-utils.gc +++ b/goal_src/pc_debug/pc-pad-utils.gc @@ -19,6 +19,10 @@ (cond (*debug-segment* +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;;; types +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + ;; a structure to hold the handles used in this file (deftype pc-pad-proc-list (structure) ((show handle) @@ -31,10 +35,11 @@ ;; a pc pad process (deftype pc-pad-proc (process) - ((state-time seconds) + ((state-time int64) (input-index uint64) + (pad-idx uint64) ) - :heap-base #x10 + :heap-base #x20 ) (define *pc-pad-button-names* @@ -66,12 +71,33 @@ (canceled) ) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;;; forward declarations +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +(define-extern pc-pi-mapping-button (state pc-pad-proc)) + + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;;; constants +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +(defconstant PC_PAD_INPUT_NOTICE_TIME (seconds 1.5)) + + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;;; functions +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + (defun-debug pc-pad-show-start () "Start the PC port pad debug display" (if (not (handle->process (-> *pc-pad-proc-list* show))) (let ((procp - (make-function-process *nk-dead-pool* *active-pool* pc-pad-proc :name 'pc-pad-show + (make-function-process pc-pad-proc :name 'pc-pad-show (lambda :behavior pc-pad-proc () (stack-size-set! (-> self main-thread) 512) (loop @@ -99,11 +125,54 @@ (kill-by-name 'pc-pad-show *active-pool*) ) +(defun-debug pc-pad-input-start () + "Start the PC port pad debug key mapping" + + (if (not (handle->process (-> *pc-pad-proc-list* input))) + (let ((procp + (make-init-process pc-pad-proc :name 'pc-pad-input + (lambda :behavior pc-pad-proc () + (set! (-> self pad-idx) 0) + (pc-pad-input-mode-set #t) + (go pc-pi-mapping-button) + ) + ) + )) + (set! (-> *pc-pad-proc-list* input) (ppointer->handle procp)) + ) + + (format #t "That process is already running. :-)~%") + ) + ) -(defconstant PC_PAD_INPUT_NOTICE_TIME (seconds 1.5)) +(defun-debug pc-pad-input-stop () + "Stop the PC port pad debug key mapping" + + (kill-by-name 'pc-pad-input *active-pool*) + (pc-pad-input-mode-set 'canceled) + ) -(define-extern pc-pi-mapping-button (state pc-pad-proc)) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;;; behaviors +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +(defbehavior pc-pi-post pc-pad-proc () + (with-dma-buffer-add-bucket ((buf (-> (current-frame) debug-buf)) + (bucket-id debug-draw1)) + (draw-string-xy (string-format "MAPPING PAD ~D" (-> self pad-idx)) buf 256 32 + (font-color red) (font-flags shadow kerning large middle)) + ) + ) + + +(defstatehandler pc-pad-proc :post pc-pi-post) + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;;; states +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defstate pc-pi-new-mapping (pc-pad-proc) @@ -174,13 +243,9 @@ (defstate pc-pi-mapping-button (pc-pad-proc) :code (behavior () - (set-state-time) (loop (with-dma-buffer-add-bucket ((buf (-> (current-frame) debug-buf)) (bucket-id debug-draw1)) - (if (< (mod (time-passed) (seconds 2)) (seconds 1)) - (draw-string-xy "NOW MAPPING PAD" buf 256 32 (font-color red) (font-flags shadow kerning large middle)) - ) (draw-string-xy "PRESS ESCAPE TO EXIT" buf 256 64 (font-color default) (font-flags shadow kerning large middle)) (draw-string-xy (string-format "PRESS KEY FOR ~S" (-> *pc-pad-button-names* (-> self input-index))) buf 256 96 (font-color default) (font-flags shadow kerning large middle)) @@ -214,32 +279,5 @@ ) ) - -(defun-debug pc-pad-input-start () - "Start the PC port pad debug key mapping" - - (if (not (handle->process (-> *pc-pad-proc-list* input))) - (let ((procp - (make-init-process *nk-dead-pool* *active-pool* pc-pad-proc :name 'pc-pad-input - (lambda :behavior pc-pad-proc () - (pc-pad-input-mode-set #t) - (go pc-pi-mapping-button) - ) - ) - )) - (set! (-> *pc-pad-proc-list* input) (ppointer->handle procp)) - ) - - (format #t "That process is already running. :-)~%") - ) - ) - -(defun-debug pc-pad-input-stop () - "Stop the PC port pad debug key mapping" - - (kill-by-name 'pc-pad-input *active-pool*) - (pc-pad-input-mode-set 'canceled) - ) - ) (else (format #t "No debug memory in use. pc-pad-utils not loaded."))) \ No newline at end of file diff --git a/goalc/compiler/compilation/Math.cpp b/goalc/compiler/compilation/Math.cpp index cadcad1134..88272f0ac7 100644 --- a/goalc/compiler/compilation/Math.cpp +++ b/goalc/compiler/compilation/Math.cpp @@ -566,7 +566,10 @@ Val* Compiler::compile_mod(const goos::Object& form, const goos::Object& rest, E fenv->constrain(con); env->emit_ir(form, IntegerMathKind::IMOD_32, result, second); - return result; + + auto result_moved = env->make_gpr(first->type()); + env->emit_ir(form, result_moved, result); + return result_moved; } Val* Compiler::compile_logand(const goos::Object& form, const goos::Object& rest, Env* env) { diff --git a/scripts/batch/test-types.bat b/scripts/batch/test-types.bat new file mode 100644 index 0000000000..011396b458 --- /dev/null +++ b/scripts/batch/test-types.bat @@ -0,0 +1,4 @@ +@echo off +cd ..\.. +out\build\Release\bin\goalc-test --gtest_filter="TypeCon*" +pause \ No newline at end of file diff --git a/test/decompiler/reference/engine/ambient/weather-part_REF.gc b/test/decompiler/reference/engine/ambient/weather-part_REF.gc index 49ca60a5d2..192bbe93b6 100644 --- a/test/decompiler/reference/engine/ambient/weather-part_REF.gc +++ b/test/decompiler/reference/engine/ambient/weather-part_REF.gc @@ -92,96 +92,99 @@ (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 #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3dcccccd - :random-mult #x3f800000 + :initial-valuef 0.1 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -963641344 - :random-range #x47100000 - :random-mult #x3f800000 + :initial-valuef -18432.0 + :random-rangef 36864.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -968884224 - :random-range #x46c00000 - :random-mult #x3f800000 + :initial-valuef -12288.0 + :random-rangef 24576.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46200000 - :random-mult #x3f800000 + :initial-valuef 10240.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x442aaaab - :random-mult #x3f800000 + :initial-valuef 682.6667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1085485875 - :random-mult #x3f800000 + :initial-valuef -0.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 10 - :random-mult 1 + :initial-valuef (the-as float #xa) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -194,89 +197,96 @@ (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 #x1 + :initial-valuef (the-as float #x200900) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45c00000 - :random-mult #x3f800000 + :initial-valuef 6144.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41a00000 - :random-mult #x3f800000 + :initial-valuef 20.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x43088889 - :random-mult #x3f800000 + :initial-valuef 136.53334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1085485875 - :random-mult #x3f800000 + :initial-valuef -0.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1070677186 - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x10e - :random-mult 1 + :initial-valuef (the-as float #x10e) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 15 - :random-mult 1 + :initial-valuef (the-as float #xf) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x18) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 24) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -291,20 +301,20 @@ (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x41888889 - :random-mult #x3f800000 + :initial-valuef 17.066668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1115125623 - :random-mult #x3f800000 + :initial-valuef -0.06666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -320,72 +330,76 @@ (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xe - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x454ccccd - :random-mult #x3f800000 + :initial-valuef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x454ccccd - :random-mult #x3f800000 + :initial-valuef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value #x40c22e45 - :random-mult #x3f800000 + :initial-valuef 6.068148 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value #x42888889 - :random-mult #x3f800000 + :initial-valuef 68.26667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value #x40422e45 - :random-mult #x3f800000 + :initial-valuef 3.034074 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1070677186 - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x10e - :random-mult 1 + :initial-valuef (the-as float #x10e) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x100 - :random-mult 1 + :initial-valuef (the-as float #x100) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 30 - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x19) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 25) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -400,8 +414,8 @@ (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1063004405 - :random-mult #x3f800000 + :initial-valuef -5.1200004 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -414,96 +428,99 @@ (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 #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3dcccccd - :random-mult #x3f800000 + :initial-valuef 0.1 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -963641344 - :random-range #x47100000 - :random-mult #x3f800000 + :initial-valuef -18432.0 + :random-rangef 36864.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -968884224 - :random-range #x46c00000 - :random-mult #x3f800000 + :initial-valuef -12288.0 + :random-rangef 24576.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46800000 - :random-mult #x3f800000 + :initial-valuef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x44888889 - :random-mult #x3f800000 + :initial-valuef 1092.2667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1085485875 - :random-mult #x3f800000 + :initial-valuef -0.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 10 - :random-mult 1 + :initial-valuef (the-as float #xa) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -516,89 +533,96 @@ (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 #x1 + :initial-valuef (the-as float #x200900) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46266666 - :random-mult #x3f800000 + :initial-valuef 10649.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41a00000 - :random-mult #x3f800000 + :initial-valuef 20.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x43888889 - :random-mult #x3f800000 + :initial-valuef 273.06668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1085485875 - :random-mult #x3f800000 + :initial-valuef -0.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1070677186 - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x10e - :random-mult 1 + :initial-valuef (the-as float #x10e) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 15 - :random-mult 1 + :initial-valuef (the-as float #xf) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x1a) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 26) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -613,20 +637,20 @@ (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x42088889 - :random-mult #x3f800000 + :initial-valuef 34.133335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1115125623 - :random-mult #x3f800000 + :initial-valuef -0.06666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -642,72 +666,76 @@ (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xe - :initial-value 24 - :random-mult 1 + :initial-valuef (the-as float #x18) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x46400000 - :random-mult #x3f800000 + :initial-valuef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x45cccccd - :random-mult #x3f800000 + :initial-valuef 6553.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x45cccccd - :random-mult #x3f800000 + :initial-valuef 6553.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value #x41422e45 - :random-mult #x3f800000 + :initial-valuef 12.136296 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value #x43088889 - :random-mult #x3f800000 + :initial-valuef 136.53334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value #x40c22e45 - :random-mult #x3f800000 + :initial-valuef 6.068148 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1070677186 - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x10e - :random-mult 1 + :initial-valuef (the-as float #x10e) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x100 - :random-mult 1 + :initial-valuef (the-as float #x100) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 30 - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x1b) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 27) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -722,8 +750,8 @@ (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1054615797 - :random-mult #x3f800000 + :initial-valuef -10.240001 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -755,96 +783,99 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x48200000 - :random-range #x48200000 - :random-mult #x3f800000 + :initial-valuef 163840.0 + :random-rangef 163840.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43800000 - :random-mult #x3f800000 + :initial-valuef 256.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43800000 - :random-mult #x3f800000 + :initial-valuef 256.0 + :random-multf 1.0 ) (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 + :initial-valuef 256.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3eda740e - :random-mult #x3f800000 + :initial-valuef 0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 60 - :random-range #xef - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-rangef (the-as float #xef) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x1f) ) - (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 + :initial-valuef -16201.955 + :random-rangef 32403.91 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x48800000 - :random-mult #x3f800000 + :random-rangef 262144.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x4b9c4000 - :random-mult #x3f800000 + :initial-valuef 20480000.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -857,17 +888,18 @@ (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 #x24 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #x1c9c254 - :random-mult 1 + :initial-valuef + 0.000000000000000000000000000000000000074114586 + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x20) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 32) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -882,8 +914,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -896,96 +928,99 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x48200000 - :random-range #x48200000 - :random-mult #x3f800000 + :initial-valuef 163840.0 + :random-rangef 163840.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43800000 - :random-mult #x3f800000 + :initial-valuef 256.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43800000 - :random-mult #x3f800000 + :initial-valuef 256.0 + :random-multf 1.0 ) (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 + :initial-valuef 256.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3eda740e - :random-mult #x3f800000 + :initial-valuef 0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 60 - :random-range #xef - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-rangef (the-as float #xef) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x1f) ) - (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 + :initial-valuef 5461.3335 + :random-rangef 10740.622 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x49000000 - :random-mult #x3f800000 + :random-rangef 524288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x4b9c4000 - :random-mult #x3f800000 + :initial-valuef 20480000.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -998,96 +1033,99 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x48200000 - :random-range #x48200000 - :random-mult #x3f800000 + :initial-valuef 163840.0 + :random-rangef 163840.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (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 + :initial-valuef 128.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3eda740e - :random-mult #x3f800000 + :initial-valuef 0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 60 - :random-range #xef - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-rangef (the-as float #xef) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x1f) ) - (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 + :initial-valuef 10922.667 + :random-rangef 5279.289 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x49800000 - :random-mult #x3f800000 + :random-rangef 1048576.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x4b9c4000 - :random-mult #x3f800000 + :initial-valuef 20480000.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1100,112 +1138,119 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40800000 - :random-mult #x3f800000 + :initial-valuef 4.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value #x47200000 - :random-range #x47200000 - :random-mult #x3f800000 + :initial-valuef 40960.0 + :random-rangef 40960.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x46000000 - :random-range #x47600000 - :random-mult #x3f800000 + :initial-valuef 8192.0 + :random-rangef 57344.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x444ccccd - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-rangef 409.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xe + :initial-valuef (the-as float #x4) + :random-multf (the-as float #x1) ) - (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 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (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 + :initial-valuef 255.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value -1037838582 - :random-range -1051036658 - :random-mult #x3f800000 + :initial-valuef -40.96 + :random-rangef -13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1017482226 - :random-range #x43da740e - :random-mult #x3f800000 + :initial-valuef -218.45334 + :random-rangef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3f5a740e - :random-mult #x3f800000 + :initial-valuef 0.85333335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 75 - :random-range 74 - :random-mult 1 + :initial-valuef (the-as float #x4b) + :random-rangef (the-as float #x4a) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x23) ) - (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 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1218,109 +1263,112 @@ (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 + :field #x1 + :initial-valuef (the-as float #x200f00) ) + (new 'static 'sp-field-init-spec :field #x6 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x47a00000 - :random-mult #x3f800000 + :random-rangef 81920.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x47800000 - :random-mult #x3f800000 + :initial-valuef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x444ccccd - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-rangef 409.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xe + :initial-valuef (the-as float #x4) + :random-multf (the-as float #x1) ) - (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 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (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 + :initial-valuef 255.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value -1037838582 - :random-range -1051036658 - :random-mult #x3f800000 + :initial-valuef -40.96 + :random-rangef -13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1017482226 - :random-range #x43da740e - :random-mult #x3f800000 + :initial-valuef -218.45334 + :random-rangef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3f5a740e - :random-mult #x3f800000 + :initial-valuef 0.85333335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 75 - :random-range 74 - :random-mult 1 + :initial-valuef (the-as float #x4b) + :random-rangef (the-as float #x4a) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x23) ) - (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 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1333,17 +1381,17 @@ (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 #x24 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #x4b0 - :random-mult 1 + :initial-valuef (the-as float #x4b0) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x24) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 36) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -1358,8 +1406,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1084591090 - :random-mult #x3f800000 + :initial-valuef -0.85333335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1381,18 +1429,12 @@ ) ) ) - (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* 34 init-specs 1 initial-valuef) (- 1.0 f0-0)) + (set! (-> *part-id-table* 33 init-specs 1 initial-valuef) (* 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)))) + (-> *part-id-table* 33 init-specs 19 initial-valuef) + (+ 32768.0 (vector-y-angle (-> arg0 control transv))) ) (sp-launch-particles-var *sp-particle-system-2d* @@ -1421,98 +1463,97 @@ (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 #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3fc00000 - :random-mult #x3f800000 + :initial-valuef 1.5 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x47a00000 - :random-mult #x3f800000 + :random-rangef 81920.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x47800000 - :random-mult #x3f800000 + :initial-valuef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x42f5c28f - :random-range #x42f5c28f - :random-mult #x3f800000 + :initial-valuef 122.88 + :random-rangef 122.88 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42480000 - :random-mult #x3f800000 + :initial-valuef 50.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42a00000 - :random-range #x425c0000 - :random-mult #x3f800000 + :initial-valuef 80.0 + :random-rangef 55.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42480000 - :random-range #x42480000 - :random-mult #x3f800000 + :initial-valuef 50.0 + :random-rangef 50.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value -1014462327 - :random-range -1006073719 - :random-mult #x3f800000 + :initial-valuef -273.06668 + :random-rangef -546.13336 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xf0 - :random-mult 1 + :initial-valuef (the-as float #xf0) + :random-multf (the-as float #x1) ) (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 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) + (new 'static 'sp-field-init-spec :field #x30 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'check-drop-level-rain + :sym 'check-drop-level-rain ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1525,88 +1566,91 @@ (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 #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40900000 - :random-mult #x3f800000 + :initial-valuef 4.5 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x47a00000 - :random-mult #x3f800000 + :random-rangef 81920.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x47800000 - :random-mult #x3f800000 + :initial-valuef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x42f5c28f - :random-range #x42f5c28f - :random-mult #x3f800000 + :initial-valuef 122.88 + :random-rangef 122.88 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42480000 - :random-mult #x3f800000 + :initial-valuef 50.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42a00000 - :random-range #x425c0000 - :random-mult #x3f800000 + :initial-valuef 80.0 + :random-rangef 55.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42480000 - :random-range #x42480000 - :random-mult #x3f800000 + :initial-valuef 50.0 + :random-rangef 50.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value -1014462327 - :random-range -1022850935 - :random-mult #x3f800000 + :initial-valuef -273.06668 + :random-rangef -136.53334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xf0 - :random-mult 1 + :initial-valuef (the-as float #xf0) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1619,95 +1663,98 @@ (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 #x1 + :initial-valuef (the-as float #x200900) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x2 - :random-range 1 - :random-mult #x40000000 + :random-rangef (the-as float #x1) + :random-multf 2.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x434ccccd - :random-range #x4399999a - :random-mult #x3f800000 + :initial-valuef 204.8 + :random-rangef 307.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42dc0000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 110.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x41da740e - :random-range #x425a740e - :random-mult #x3f800000 + :initial-valuef 27.306667 + :random-rangef 54.613335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1084591090 - :random-mult #x3f800000 + :initial-valuef -0.85333335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1070677186 - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x458e38e4 - :random-range #x45e38e39 - :random-mult #x3f800000 + :initial-valuef 4551.1113 + :random-rangef 7281.778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1720,100 +1767,103 @@ (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 #x1 + :initial-valuef (the-as float #x201e00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xf :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42dc0000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 110.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x41da740e - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 27.306667 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1093874483 - :random-mult #x3f800000 + :initial-valuef -0.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x78 - :random-mult 1 + :initial-valuef (the-as float #x78) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1888,38 +1938,14 @@ ) ) ) - (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) - ) + (set! (-> *part-id-table* 37 init-specs 4 initial-valuef) f28-0) + (set! (-> *part-id-table* 37 init-specs 4 random-rangef) f28-0) + (set! (-> *part-id-table* 38 init-specs 4 initial-valuef) f28-0) + (set! (-> *part-id-table* 38 init-specs 4 random-rangef) f28-0) + (set! (-> *part-id-table* 37 init-specs 5 initial-valuef) f30-0) + (set! (-> *part-id-table* 37 init-specs 5 random-rangef) f30-0) + (set! (-> *part-id-table* 38 init-specs 5 initial-valuef) f30-0) + (set! (-> *part-id-table* 38 init-specs 5 random-rangef) f30-0) ) (sp-launch-particles-var *sp-particle-system-2d* @@ -1953,28 +1979,28 @@ (the-as int (-> self water-drip-time)) ) (set! - (-> *part-id-table* 21 init-specs 1 initial-value) - (the-as int (-> self water-drip-mult)) + (-> *part-id-table* 21 init-specs 1 initial-valuef) + (-> self water-drip-mult) ) (set! - (-> *part-id-table* 18 init-specs 1 initial-value) - (the-as int (* 0.9 (-> self water-drip-mult))) + (-> *part-id-table* 18 init-specs 1 initial-valuef) + (* 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))) + (-> *part-id-table* 22 init-specs 11 initial-valuef) + (* -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))) + (-> *part-id-table* 23 init-specs 8 initial-valuef) + (* -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))) + (-> *part-id-table* 19 init-specs 11 initial-valuef) + (* -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))) + (-> *part-id-table* 20 init-specs 8 initial-valuef) + (* -2.7306666 (-> self water-drip-speed)) ) (dummy-11 (-> self water-drip) *zero-vector*) ) @@ -2065,68 +2091,67 @@ (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 #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4a960000 - :random-mult #x3f800000 + :initial-valuef 4915200.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (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 + :initial-valuef (the-as float #x500c) + :random-multf (the-as float #x1) ) + (new 'static 'sp-field-init-spec :field #x30 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2139,80 +2164,79 @@ (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 #x1 + :initial-valuef (the-as float #x203500) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (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 + :initial-valuef 11468800.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x10 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x4b098000 - :random-mult #x3f800000 + :initial-valuef 9011200.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1055808844 - :random-mult #x3f800000 + :initial-valuef -9.102222 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x30 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2225,80 +2249,79 @@ (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 #x1 + :initial-valuef (the-as float #x203500) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (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 + :initial-valuef 9011200.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x10 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x4b2f0000 - :random-mult #x3f800000 + :initial-valuef 11468800.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value #x4111a2b4 - :random-mult #x3f800000 + :initial-valuef 9.102222 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x30 :flags #x1 - :initial-value #x40000000 - :random-mult #x3f800000 + :initial-valuef 2.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2330,66 +2353,57 @@ (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 #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4a160000 - :random-mult #x3f800000 + :initial-valuef 2457600.0 + :random-multf 1.0 ) (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 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) (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 + :initial-valuef 255.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x30 :flags #x1 - :initial-value #x40800000 - :random-mult #x3f800000 + :initial-valuef 4.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2402,78 +2416,69 @@ (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 #x1 + :initial-valuef (the-as float #x203500) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (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 + :initial-valuef 5734400.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x10 :flags #x1 :random-multf 1.0) (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 + :initial-valuef 4505600.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) (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 + :initial-valuef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1055808844 - :random-mult #x3f800000 + :initial-valuef -9.102222 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x30 :flags #x1 - :initial-value #x40a00000 - :random-mult #x3f800000 + :initial-valuef 5.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2486,84 +2491,71 @@ (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 #x1 + :initial-valuef (the-as float #x203500) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (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 + :initial-valuef 4505600.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x10 :flags #x1 :random-multf 1.0) (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 + :initial-valuef 5734400.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) (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 + :initial-valuef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value #x4111a2b4 - :random-mult #x3f800000 + :initial-valuef 9.102222 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x30 :flags #x1 - :initial-value #x40c00000 - :random-mult #x3f800000 + :initial-valuef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-sun + :sym 'sparticle-track-sun ) (new 'static 'sp-field-init-spec :field #x43) ) ) ) - - - - diff --git a/test/decompiler/reference/engine/collide/collide-touch-h_REF.gc b/test/decompiler/reference/engine/collide/collide-touch-h_REF.gc index dc3fe52982..0d0de1be4a 100644 --- a/test/decompiler/reference/engine/collide/collide-touch-h_REF.gc +++ b/test/decompiler/reference/engine/collide/collide-touch-h_REF.gc @@ -167,7 +167,7 @@ (dummy-11 () none 11) (dummy-12 () none 12) (dummy-13 () none 13) - (dummy-14 () none 14) + (dummy-14 (_type_) none 14) ) ) diff --git a/test/decompiler/reference/engine/game/generic-obs-h_REF.gc b/test/decompiler/reference/engine/game/generic-obs-h_REF.gc index da40dbfa76..51dc5c46d0 100644 --- a/test/decompiler/reference/engine/game/generic-obs-h_REF.gc +++ b/test/decompiler/reference/engine/game/generic-obs-h_REF.gc @@ -9,8 +9,8 @@ (new-joint-anim art-joint-anim :offset-assert 188) (new-joint-anim-blend uint64 :offset-assert 192) (anim-mode symbol :offset-assert 200) - (cur-grab-handle uint64 :offset-assert 208) - (cur-target-handle uint64 :offset-assert 216) + (cur-grab-handle handle :offset-assert 208) + (cur-target-handle handle :offset-assert 216) (old-grab-pos vector :inline :offset-assert 224) (joint joint 4 :offset-assert 240) (new-post-hook function :offset-assert 256) @@ -311,7 +311,7 @@ :size-assert #x70 :flag-assert #xf00000070 (:methods - (dummy-14 () none 14) + (die () _type_ :state 14) ) ) diff --git a/test/decompiler/reference/engine/game/main-h_REF.gc b/test/decompiler/reference/engine/game/main-h_REF.gc index 9c3d6ef225..df4c89efd9 100644 --- a/test/decompiler/reference/engine/game/main-h_REF.gc +++ b/test/decompiler/reference/engine/game/main-h_REF.gc @@ -313,7 +313,7 @@ :size-assert #xc :flag-assert #xa0000000c (:methods - (dummy-9 (_type_) none 9) + (draw (_type_) none 9) ) ) diff --git a/test/decompiler/reference/engine/game/projectiles_REF.gc b/test/decompiler/reference/engine/game/projectiles_REF.gc index 275427dfdd..dd2cbad731 100644 --- a/test/decompiler/reference/engine/game/projectiles_REF.gc +++ b/test/decompiler/reference/engine/game/projectiles_REF.gc @@ -542,44 +542,43 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 9 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4223d70a - :random-mult #x3f800000 + :initial-valuef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x4b0 - :random-mult 1 + :initial-valuef (the-as float #x4b0) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 8 - :random-mult 1 + :initial-valuef (the-as float #x8) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'sparticle-track-root-prim + :sym 'sparticle-track-root-prim ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -592,92 +591,91 @@ (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 #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x46800000 - :random-range #x47800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #xc - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 16384.0 + :random-rangef 65536.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #xc :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46a00000 - :random-mult #x3f800000 + :initial-valuef 20480.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x2 - :initial-value -1009093618 - :random-range 1 - :random-mult #x445a740e + :initial-valuef -436.90668 + :random-rangef (the-as float #x1) + :random-multf 873.81335 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x2 - :initial-value -1030643020 - :random-range 1 - :random-mult #x4311a2b4 + :initial-valuef -72.81778 + :random-rangef (the-as float #x1) + :random-multf 145.63556 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x4b0 - :random-mult 1 + :initial-valuef (the-as float #x4b0) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x8c - :random-mult 1 + :initial-valuef (the-as float #x8c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -690,91 +688,90 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40000000 - :random-mult #x3f800000 + :initial-valuef 2.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #xc - :flags #x1 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #xc :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45c00000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 6144.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x18 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :initial-value #x43e696f2 - :random-mult #x3f800000 + :initial-valuef 461.17926 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x2 - :initial-value -1034259442 - :random-range 1 - :random-mult #x42da740e + :initial-valuef -54.613335 + :random-rangef (the-as float #x1) + :random-multf 109.22667 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x4b0 - :random-mult 1 + :initial-valuef (the-as float #x4b0) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x8c - :random-mult 1 + :initial-valuef (the-as float #x8c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -787,86 +784,89 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45c00000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 6144.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1029449974 - :random-mult #x3f800000 + :initial-valuef -81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x2 - :initial-value -1034259442 - :random-range 1 - :random-mult #x42da740e + :initial-valuef -54.613335 + :random-rangef (the-as float #x1) + :random-multf 109.22667 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1082130432 - :random-mult #x3f800000 + :initial-valuef -1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 54 - :random-mult 1 + :initial-valuef (the-as float #x36) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -879,140 +879,139 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 24 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f000000 - :random-range #x3f000000 - :random-mult #x3f800000 + :initial-valuef 0.5 + :random-rangef 0.5 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1018377011 - :random-mult #x3f800000 + :initial-valuef -204.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4499999a - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c80000 - :random-range #x41e00000 - :random-mult #x3f800000 + :initial-valuef 100.0 + :random-rangef 28.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x41a3d70a - :random-range #x423f258c - :random-mult #x3f800000 + :initial-valuef 20.48 + :random-rangef 47.786667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1066512368 - :random-mult #x3f800000 + :initial-valuef -3.7236366 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1093874483 - :random-mult #x3f800000 + :initial-valuef -0.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1127835636 - :random-mult #x3f800000 + :initial-valuef -0.024242423 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1093552360 - :random-range -1080211118 - :random-mult #x3f800000 + :initial-valuef -0.40960002 + :random-rangef -1.2288 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f6e147b - :random-mult #x3f800000 + :initial-valuef 0.93 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 30 - :random-range #x12b - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-rangef (the-as float #x12b) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 90 - :random-mult 1 + :initial-valuef (the-as float #x5a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x162 + :initial-valuef (the-as float #x162) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x4499999a - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1025,11 +1024,7 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 2 - (new 'static 'sp-field-init-spec - :field #x21 - :flags #x1 - :random-mult #x3f800000 - ) + (new 'static 'sp-field-init-spec :field #x21 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -1086,82 +1081,81 @@ (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 #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47000000 - :random-mult #x3f800000 + :initial-valuef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1014462327 - :random-mult #x3f800000 + :initial-valuef -273.06668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x2 - :initial-value -955145548 - :random-range 1 - :random-mult #x4791a2b4 + :initial-valuef -37282.703 + :random-rangef (the-as float #x1) + :random-multf 74565.41 ) (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 - :random-mult #x3f800000 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) + (new 'static 'sp-field-init-spec :field #x24 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 60 - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1174,126 +1168,129 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40a00000 - :random-mult #x3f800000 + :initial-valuef 5.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -988178022 - :random-range #x4599999a - :random-mult #x3f800000 + :initial-valuef -2457.6 + :random-rangef 4915.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -988178022 - :random-range #x4599999a - :random-mult #x3f800000 + :initial-valuef -2457.6 + :random-rangef 4915.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -988178022 - :random-range #x4599999a - :random-mult #x3f800000 + :initial-valuef -2457.6 + :random-rangef 4915.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45c00000 - :random-range #x45400000 - :random-mult #x3f800000 + :initial-valuef 6144.0 + :random-rangef 3072.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c80000 - :random-range #x41e00000 - :random-mult #x3f800000 + :initial-valuef 100.0 + :random-rangef 28.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x4191a2b4 - :random-mult #x3f800000 + :initial-valuef 18.204445 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1034259442 - :random-range #x42da740e - :random-mult #x3f800000 + :initial-valuef -54.613335 + :random-rangef 109.22667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1106140492 - :random-mult #x3f800000 + :initial-valuef -0.14222223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1106140492 - :random-mult #x3f800000 + :initial-valuef -0.14222223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1114910875 - :random-mult #x3f800000 + :initial-valuef -0.06826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x1c2 - :random-mult 1 + :initial-valuef (the-as float #x1c2) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1306,116 +1303,115 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4499999a - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c80000 - :random-range #x41e00000 - :random-mult #x3f800000 + :initial-valuef 100.0 + :random-rangef 28.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :random-range #x435a740e - :random-mult #x3f800000 + :random-rangef 218.45334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1054615797 - :random-mult #x3f800000 + :initial-valuef -10.240001 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1081571191 - :random-mult #x3f800000 + :initial-valuef -1.0666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1103754399 - :random-mult #x3f800000 + :initial-valuef -0.17777778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1065151889 - :random-mult #x3f800000 + :initial-valuef -4.096 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f7d70a4 - :random-mult #x3f800000 + :initial-valuef 0.99 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 60 - :random-range 59 - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-rangef (the-as float #x3b) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x46aaaaab - :random-mult #x3f800000 + :random-rangef 21845.334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :initial-value #x46800000 - :random-range #x47000000 - :random-mult #x3f800000 + :initial-valuef 16384.0 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1428,115 +1424,114 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41c00000 - :random-mult #x3f800000 + :initial-valuef 24.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4499999a - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c80000 - :random-range #x41e00000 - :random-mult #x3f800000 + :initial-valuef 100.0 + :random-rangef 28.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :random-range #x435a740e - :random-mult #x3f800000 + :random-rangef 218.45334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1054615797 - :random-mult #x3f800000 + :initial-valuef -10.240001 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1081571191 - :random-mult #x3f800000 + :initial-valuef -1.0666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1103754399 - :random-mult #x3f800000 + :initial-valuef -0.17777778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1065151889 - :random-mult #x3f800000 + :initial-valuef -4.096 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f7d70a4 - :random-mult #x3f800000 + :initial-valuef 0.99 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 60 - :random-range 59 - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-rangef (the-as float #x3b) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1549,72 +1544,75 @@ (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 #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x425a740e - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 54.613335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1073540497 - :random-mult #x3f800000 + :initial-valuef -2.048 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f7d70a4 - :random-mult #x3f800000 + :initial-valuef 0.99 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x14a - :random-mult 1 + :initial-valuef (the-as float #x14a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x468e38e4 - :random-mult #x3f800000 + :random-rangef 18204.445 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :initial-value #x46800000 - :random-range #x47000000 - :random-mult #x3f800000 + :initial-valuef 16384.0 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1627,71 +1625,74 @@ (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 #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x425a740e - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 54.613335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1073540497 - :random-mult #x3f800000 + :initial-valuef -2.048 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f7d70a4 - :random-mult #x3f800000 + :initial-valuef 0.99 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x14a - :random-mult 1 + :initial-valuef (the-as float #x14a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1704,124 +1705,123 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value #x43cccccd - :random-range #x444ccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-rangef 819.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4499999a - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c80000 - :random-range #x41e00000 - :random-mult #x3f800000 + :initial-valuef 100.0 + :random-rangef 28.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x18 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :initial-value #x43da740e - :random-mult #x3f800000 + :initial-valuef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1066512368 - :random-mult #x3f800000 + :initial-valuef -3.7236366 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x2 - :initial-value -1034259442 - :random-range 1 - :random-mult #x42da740e + :initial-valuef -54.613335 + :random-rangef (the-as float #x1) + :random-multf 109.22667 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1098348407 - :random-mult #x3f800000 + :initial-valuef -0.26666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1102669812 - :random-mult #x3f800000 + :initial-valuef -0.19393939 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 90 - :random-range #xef - :random-mult 1 + :initial-valuef (the-as float #x5a) + :random-rangef (the-as float #xef) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x8c - :random-mult 1 + :initial-valuef (the-as float #x8c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1874,123 +1874,122 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40c00000 - :random-mult #x3f800000 + :initial-valuef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x444ccccd - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42c00000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42da740e - :random-range #x43da740e - :random-mult #x3f800000 + :initial-valuef 109.22667 + :random-rangef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1059425266 - :random-mult #x3f800000 + :initial-valuef -6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1087454402 - :random-range -1087454402 - :random-mult #x3f800000 + :initial-valuef -0.68266666 + :random-rangef -0.68266666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f666666 - :random-mult #x3f800000 + :initial-valuef 0.9 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 30 - :random-range 29 - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-rangef (the-as float #x1d) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x80f + :initial-valuef (the-as float #x80f) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x46000000 - :random-range #x46800000 - :random-mult #x3f800000 + :initial-valuef 8192.0 + :random-rangef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2003,26 +2002,14 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 5 - (new 'static 'sp-field-init-spec - :field #x21 - :flags #x1 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x22 - :flags #x1 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x23 - :flags #x1 - :random-mult #x3f800000 - ) + (new 'static 'sp-field-init-spec :field #x21 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x22 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x23 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1078588575 - :random-mult #x3f800000 + :initial-valuef -1.4222223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2035,76 +2022,75 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 14 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40400000 - :random-mult #x3f800000 + :initial-valuef 3.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x444ccccd - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x47000000 - :random-mult #x3f800000 + :initial-valuef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43440000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x1 - :initial-value #x44da740e - :random-mult #x3f800000 + :initial-valuef 1747.6267 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1077097267 - :random-mult #x3f800000 + :initial-valuef -1.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 60 - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2117,64 +2103,63 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 12 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47800000 - :random-mult #x3f800000 + :initial-valuef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43400000 - :random-range #x42000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 32.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1075877106 - :random-mult #x3f800000 + :initial-valuef -1.7454545 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 54 - :random-mult 1 + :initial-valuef (the-as float #x36) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2187,134 +2172,137 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 23 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40800000 - :random-mult #x3f800000 + :initial-valuef 4.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46200000 - :random-range #x45c00000 - :random-mult #x3f800000 + :initial-valuef 10240.0 + :random-rangef 6144.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x425a740e - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 54.613335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x425a740e - :random-mult #x3f800000 + :initial-valuef 54.613335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1034259442 - :random-range #x42da740e - :random-mult #x3f800000 + :initial-valuef -54.613335 + :random-rangef 109.22667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1077097267 - :random-mult #x3f800000 + :initial-valuef -1.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value #x3f2ec33e - :random-range #x3f2ec33e - :random-mult #x3f800000 + :initial-valuef 0.68266666 + :random-rangef 0.68266666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f4ccccd - :random-mult #x3f800000 + :initial-valuef 0.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x1fe - :random-mult 1 + :initial-valuef (the-as float #x1fe) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 42 - :random-mult 1 + :initial-valuef (the-as float #x2a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x810 + :initial-valuef (the-as float #x810) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2330,26 +2318,26 @@ (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value -1089959799 - :random-mult #x3f800000 + :initial-valuef -0.53333336 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1089959799 - :random-mult #x3f800000 + :initial-valuef -0.53333336 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value -1081571191 - :random-mult #x3f800000 + :initial-valuef -1.0666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1089959799 - :random-mult #x3f800000 + :initial-valuef -0.53333336 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2874,12 +2862,12 @@ (set! (-> obj max-hits) 1) ) (set! - (-> *part-id-table* 356 init-specs 18 initial-value) - (the-as int (the float (sar (shl (the int (+ -16384.0 f30-0)) 48) 48))) + (-> *part-id-table* 356 init-specs 18 initial-valuef) + (the float (sar (shl (the int (+ -16384.0 f30-0)) 48) 48)) ) (set! - (-> *part-id-table* 358 init-specs 11 initial-value) - (the-as int (the float (sar (shl (the int (+ -16384.0 f30-0)) 48) 48))) + (-> *part-id-table* 358 init-specs 11 initial-valuef) + (the float (sar (shl (the int (+ -16384.0 f30-0)) 48) 48)) ) (sound-play-by-name (static-sound-name "yellow-fire") @@ -2927,10 +2915,7 @@ ) ) ) - (set! - (-> *part-id-table* 350 init-specs 2 initial-value) - (the-as int f30-0) - ) + (set! (-> *part-id-table* 350 init-specs 2 initial-valuef) f30-0) ) ) (set! @@ -3009,8 +2994,14 @@ ) ) (dummy-47 (-> obj root-override)) - (set! (-> *part-id-table* 353 init-specs 16 initial-value) 30) - (set! (-> *part-id-table* 353 init-specs 16 random-range) 300) + (set! + (-> *part-id-table* 353 init-specs 16 initial-valuef) + (the-as float 30) + ) + (set! + (-> *part-id-table* 353 init-specs 16 random-rangef) + (the-as float 300) + ) (cond ((logtest? (-> obj options) 32) (when @@ -3023,8 +3014,14 @@ (- (-> *display* base-frame-counter) (the-as int (-> obj state-time))) 150 ) - (set! (-> *part-id-table* 353 init-specs 16 initial-value) 0) - (set! (-> *part-id-table* 353 init-specs 16 random-range) 0) + (set! + (-> *part-id-table* 353 init-specs 16 initial-valuef) + (the-as float 0) + ) + (set! + (-> *part-id-table* 353 init-specs 16 random-rangef) + (the-as float 0) + ) 0 ) (dummy-11 @@ -3383,7 +3380,3 @@ (none) ) ) - - - - diff --git a/test/decompiler/reference/engine/game/settings-h_REF.gc b/test/decompiler/reference/engine/game/settings-h_REF.gc index 7eb211c9c1..0f1953fa19 100644 --- a/test/decompiler/reference/engine/game/settings-h_REF.gc +++ b/test/decompiler/reference/engine/game/settings-h_REF.gc @@ -9,7 +9,7 @@ (dialog-volume float :offset-assert 12) (process-mask process-mask :offset-assert 16) (common-page int32 :offset-assert 20) - (language int64 :offset-assert 24) + (language language-enum :offset-assert 24) (screenx int32 :offset-assert 32) (screeny int32 :offset-assert 36) (vibration symbol :offset-assert 40) diff --git a/test/decompiler/reference/engine/game/settings_REF.gc b/test/decompiler/reference/engine/game/settings_REF.gc index 3e0a89a138..6fe8c9386f 100644 --- a/test/decompiler/reference/engine/game/settings_REF.gc +++ b/test/decompiler/reference/engine/game/settings_REF.gc @@ -173,7 +173,10 @@ (set! (-> obj bg-a-force) (the-as float (-> conn param2))) ) (('language) - (set! (-> obj language) (the-as int (-> conn param3))) + (set! + (-> obj language) + (the-as language-enum (the-as int (-> conn param3))) + ) ) (('vibration) (set! (-> obj vibration) (the-as symbol (-> conn param1))) @@ -521,7 +524,7 @@ (the float (* 5 (the int (+ 0.5 (* 16.0 f0-2))))) ) ) - (set! (-> gp-0 language) (the-as int (scf-get-language))) + (set! (-> gp-0 language) (scf-get-language)) (set! (-> gp-0 process-mask) (process-mask execute sleep)) (set! (-> gp-0 screenx) 0) (set! (-> gp-0 screeny) 0) diff --git a/test/decompiler/reference/engine/game/video_REF.gc b/test/decompiler/reference/engine/game/video_REF.gc index 40b8bcc0de..64b1e46430 100644 --- a/test/decompiler/reference/engine/game/video_REF.gc +++ b/test/decompiler/reference/engine/game/video_REF.gc @@ -54,7 +54,7 @@ (set! (-> *video-parms* set-video-mode) #t) (set-hud-aspect-ratio (get-aspect-ratio) arg0) (if *progress-process* - (TODO-RENAME-23 (-> *progress-process* 0) (get-aspect-ratio) arg0) + (adjust-ratios (-> *progress-process* 0) (get-aspect-ratio) arg0) ) 0 (none) @@ -84,7 +84,7 @@ ) (set-hud-aspect-ratio arg0 (get-video-mode)) (if *progress-process* - (TODO-RENAME-23 (-> *progress-process* 0) arg0 (get-video-mode)) + (adjust-ratios (-> *progress-process* 0) arg0 (get-video-mode)) ) 0 (none) diff --git a/test/decompiler/reference/engine/gfx/shadow/shadow_REF.gc b/test/decompiler/reference/engine/gfx/shadow/shadow_REF.gc index 41711c126d..2c1a505d2d 100644 --- a/test/decompiler/reference/engine/gfx/shadow/shadow_REF.gc +++ b/test/decompiler/reference/engine/gfx/shadow/shadow_REF.gc @@ -222,116 +222,119 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4499999a - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :initial-value -956301312 - :random-range #x47800000 - :random-mult #x3f800000 + :initial-valuef -32768.0 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42b40000 - :random-mult #x3f800000 + :initial-valuef 90.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42b40000 - :random-mult #x3f800000 + :initial-valuef 90.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42b40000 - :random-mult #x3f800000 + :initial-valuef 90.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41a00000 - :random-range #x41a00000 - :random-mult #x3f800000 + :initial-valuef 20.0 + :random-rangef 20.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x4103126f - :random-mult #x3f800000 + :initial-valuef 8.192 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x41888889 - :random-mult #x3f800000 + :initial-valuef 17.066668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1097229926 - :random-mult #x3f800000 + :initial-valuef -0.3 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x138c - :random-mult 1 + :initial-valuef (the-as float #x138c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x36 :flags #x1 - :initial-value -983331271 - :random-range #x452aaaab - :random-mult #x3f800000 + :initial-valuef -3640.889 + :random-rangef 2730.6667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x46800000 - :random-mult #x3f800000 + :initial-valuef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :initial-value -956301312 - :random-range #x47800000 - :random-mult #x3f800000 + :initial-valuef -32768.0 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x444ccccd - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) diff --git a/test/decompiler/reference/engine/gfx/sparticle/sparticle-h_REF.gc b/test/decompiler/reference/engine/gfx/sparticle/sparticle-h_REF.gc index 4108d53451..ad93984cde 100644 --- a/test/decompiler/reference/engine/gfx/sparticle/sparticle-h_REF.gc +++ b/test/decompiler/reference/engine/gfx/sparticle/sparticle-h_REF.gc @@ -18,37 +18,37 @@ ;; definition of type sparticle-cpuinfo (deftype sparticle-cpuinfo (structure) - ((sprite sprite-vec-data-2d :offset-assert 0) - (adgif adgif-shader :offset-assert 4) - (radius float :offset-assert 8) - (omega float :offset-assert 12) - (vel-sxvel vector :inline :offset-assert 16) - (rot-syvel vector :inline :offset-assert 32) - (fade rgbaf :inline :offset-assert 48) - (acc vector :inline :offset-assert 64) - (rotvel3d quaternion :inline :offset-assert 80) - (vel vector3s :inline :offset 16) - (accel vector3s :inline :offset 64) - (scalevelx float :offset 28) - (scalevely float :offset 44) - (friction float :offset-assert 96) - (timer int32 :offset-assert 100) - (flags uint32 :offset-assert 104) - (user-int32 int32 :offset-assert 108) - (user-uint32 uint32 :offset 108) - (user-float float :offset 108) - (user-pntr uint32 :offset 108) - (user-sprite sprite-vec-data-2d :offset 108) - (func basic :offset-assert 112) - (next-time uint32 :offset-assert 116) - (next-launcher basic :offset-assert 120) - (cache-alpha float :offset-assert 124) - (valid basic :offset-assert 128) - (key basic :offset-assert 132) - (binding sparticle-launch-state :offset-assert 136) - (data uint32 1 :offset 12) - (dataf float 1 :offset 12) - (datac uint8 1 :offset 12) + ((sprite sprite-vec-data-2d :offset-assert 0) + (adgif adgif-shader :offset-assert 4) + (radius float :offset-assert 8) + (omega float :offset-assert 12) + (vel-sxvel vector :inline :offset-assert 16) + (rot-syvel vector :inline :offset-assert 32) + (fade rgbaf :inline :offset-assert 48) + (acc vector :inline :offset-assert 64) + (rotvel3d quaternion :inline :offset-assert 80) + (vel vector3s :inline :offset 16) + (accel vector3s :inline :offset 64) + (scalevelx float :offset 28) + (scalevely float :offset 44) + (friction float :offset-assert 96) + (timer int32 :offset-assert 100) + (flags uint32 :offset-assert 104) + (user-int32 int32 :offset-assert 108) + (user-uint32 uint32 :offset 108) + (user-float float :offset 108) + (user-pntr uint32 :offset 108) + (user-sprite sprite-vec-data-2d :offset 108) + (func basic :offset-assert 112) + (next-time uint32 :offset-assert 116) + (next-launcher basic :offset-assert 120) + (cache-alpha float :offset-assert 124) + (valid basic :offset-assert 128) + (key sparticle-launch-control :offset-assert 132) + (binding sparticle-launch-state :offset-assert 136) + (data uint32 1 :offset 12) + (dataf float 1 :offset 12) + (datac uint8 1 :offset 12) ) :method-count-assert 9 :size-assert #x8c @@ -122,19 +122,22 @@ ;; definition of type sparticle-system (deftype sparticle-system (basic) - ((blocks int32 2 :offset-assert 4) - (length uint32 2 :offset-assert 12) - (num-alloc uint32 2 :offset-assert 20) - (is-3d basic :offset-assert 28) - (flags uint32 :offset-assert 32) - (alloc-table uint32 :offset-assert 36) - (cpuinfo-table sparticle-cpuinfo :offset-assert 40) - (vecdata-table uint32 :offset-assert 44) - (adgifdata-table uint32 :offset-assert 48) + ((blocks int32 2 :offset-assert 4) + (length uint32 2 :offset-assert 12) + (num-alloc uint32 2 :offset-assert 20) + (is-3d basic :offset-assert 28) + (flags uint32 :offset-assert 32) + (alloc-table (pointer uint64) :offset-assert 36) + (cpuinfo-table (inline-array sparticle-cpuinfo) :offset-assert 40) + (vecdata-table pointer :offset-assert 44) + (adgifdata-table (inline-array adgif-shader) :offset-assert 48) ) :method-count-assert 9 :size-assert #x34 :flag-assert #x900000034 + (:methods + (new (symbol type int int symbol pointer (inline-array adgif-shader)) _type_ 0) + ) ) ;; definition for method 3 of type sparticle-system diff --git a/test/decompiler/reference/engine/gfx/sparticle/sparticle-launcher-h_REF.gc b/test/decompiler/reference/engine/gfx/sparticle/sparticle-launcher-h_REF.gc index 62983b38ea..1ef6f9f6e7 100644 --- a/test/decompiler/reference/engine/gfx/sparticle/sparticle-launcher-h_REF.gc +++ b/test/decompiler/reference/engine/gfx/sparticle/sparticle-launcher-h_REF.gc @@ -3,19 +3,19 @@ ;; definition of type sp-field-init-spec (deftype sp-field-init-spec (structure) - ((field uint16 :offset-assert 0) - (flags uint16 :offset-assert 2) - (initial-value int32 :offset-assert 4) - (random-range int32 :offset-assert 8) - (random-mult int32 :offset-assert 12) - (initial-valuef float :offset 4) - (random-rangef float :offset 8) - (random-multf float :offset 12) - (func symbol :offset 4) - (tex uint32 :offset 4) - (pntr uint32 :offset 4) - (sym basic :offset 4) - (sound basic :offset 4) + ((field uint16 :offset-assert 0) + (flags uint16 :offset-assert 2) + (initial-valuef float :offset-assert 4) + (random-rangef float :offset-assert 8) + (random-multf float :offset-assert 12) + (initial-value int32 :offset 4) + (random-range int32 :offset 8) + (random-mult int32 :offset 12) + (sym symbol :offset 4) + (func function :offset 4) + (tex uint32 :offset 4) + (pntr pointer :offset 4) + (sound basic :offset 4) ) :method-count-assert 9 :size-assert #x10 @@ -30,9 +30,9 @@ (format #t "~Tinitial-valuef: ~f~%" (-> obj initial-valuef)) (format #t "~Trandom-rangef: ~f~%" (-> obj random-rangef)) (format #t "~Trandom-multf: ~f~%" (-> obj random-multf)) - (format #t "~Tinitial-value: ~D~%" (-> obj initial-value)) - (format #t "~Trandom-range: ~D~%" (-> obj random-range)) - (format #t "~Trandom-mult: ~D~%" (-> obj random-mult)) + (format #t "~Tinitial-value: ~D~%" (-> obj initial-valuef)) + (format #t "~Trandom-range: ~D~%" (-> obj random-rangef)) + (format #t "~Trandom-mult: ~D~%" (-> obj random-multf)) (format #t "~Tfunc: ~A~%" (-> obj initial-valuef)) (format #t "~Ttex: ~D~%" (-> obj initial-valuef)) (format #t "~Tpntr: #x~X~%" (-> obj initial-valuef)) @@ -172,21 +172,21 @@ ;; definition of type sparticle-launch-control (deftype sparticle-launch-control (inline-array-class) - ((group basic :offset-assert 16) - (proc basic :offset-assert 20) - (local-clock int32 :offset-assert 24) - (fade float :offset-assert 28) - (matrix int32 :offset-assert 32) - (last-spawn-frame int32 :offset-assert 36) - (last-spawn-time int32 :offset-assert 40) - (center vector :inline :offset-assert 48) - (data uint8 :dynamic :offset-assert 64) + ((group sparticle-launch-group :offset-assert 16) + (proc process :offset-assert 20) + (local-clock int32 :offset-assert 24) + (fade float :offset-assert 28) + (matrix int32 :offset-assert 32) + (last-spawn-frame int32 :offset-assert 36) + (last-spawn-time int32 :offset-assert 40) + (center vector :inline :offset-assert 48) + (data sparticle-launch-state :inline :dynamic :offset-assert 64) ) :method-count-assert 14 :size-assert #x40 :flag-assert #xe00000040 (:methods - (dummy-9 () none 9) + (initialize (_type_ sparticle-launch-group process) none 9) (dummy-10 () none 10) (dummy-11 (_type_ vector) none 11) (deactivate (_type_) none 12) diff --git a/test/decompiler/reference/engine/gfx/sprite/sprite-h_REF.gc b/test/decompiler/reference/engine/gfx/sprite/sprite-h_REF.gc index a88af013cc..b6812ba293 100644 --- a/test/decompiler/reference/engine/gfx/sprite/sprite-h_REF.gc +++ b/test/decompiler/reference/engine/gfx/sprite/sprite-h_REF.gc @@ -57,12 +57,12 @@ ;; definition of type sprite-array-2d (deftype sprite-array-2d (basic) - ((num-sprites int32 2 :offset-assert 4) - (num-valid int32 2 :offset-assert 12) - (vec-data uint32 :offset-assert 20) - (adgif-data uint32 :offset-assert 24) - (pad uint128 4 :offset-assert 32) - (data uint128 1 :offset-assert 96) + ((num-sprites int32 2 :offset-assert 4) + (num-valid int32 2 :offset-assert 12) + (vec-data pointer :offset-assert 20) + (adgif-data (inline-array adgif-shader) :offset-assert 24) + (pad uint128 4 :offset-assert 32) + (data uint128 1 :offset-assert 96) ) :method-count-assert 9 :size-assert #x70 @@ -138,11 +138,11 @@ ;; definition of type sprite-array-3d (deftype sprite-array-3d (basic) - ((num-sprites int32 2 :offset-assert 4) - (num-valid int32 2 :offset-assert 12) - (vec-data uint32 :offset-assert 20) - (adgif-data uint32 :offset-assert 24) - (data uint128 1 :offset-assert 32) + ((num-sprites int32 2 :offset-assert 4) + (num-valid int32 2 :offset-assert 12) + (vec-data pointer :offset-assert 20) + (adgif-data (inline-array adgif-shader) :offset-assert 24) + (data uint128 1 :offset-assert 32) ) :method-count-assert 9 :size-assert #x30 diff --git a/test/decompiler/reference/engine/gfx/sprite/sprite_REF.gc b/test/decompiler/reference/engine/gfx/sprite/sprite_REF.gc index cf854a09a4..8e2811b016 100644 --- a/test/decompiler/reference/engine/gfx/sprite/sprite_REF.gc +++ b/test/decompiler/reference/engine/gfx/sprite/sprite_REF.gc @@ -470,8 +470,11 @@ (set! (-> v0-0 num-sprites 1) group-1-size) (set! (-> v0-0 num-valid 0) 0) (set! (-> v0-0 num-valid 1) 0) - (set! (-> v0-0 vec-data) (the-as uint (-> v0-0 data))) - (set! (-> v0-0 adgif-data) (the-as uint (&-> v0-0 data vec-data-size))) + (set! (-> v0-0 vec-data) (-> v0-0 data)) + (set! + (-> v0-0 adgif-data) + (the-as (inline-array adgif-shader) (&-> v0-0 data vec-data-size)) + ) v0-0 ) ) @@ -506,8 +509,11 @@ (set! (-> v0-0 num-sprites 1) group-1-size) (set! (-> v0-0 num-valid 0) 0) (set! (-> v0-0 num-valid 1) 0) - (set! (-> v0-0 vec-data) (the-as uint (-> v0-0 data))) - (set! (-> v0-0 adgif-data) (the-as uint (&-> v0-0 data vec-data-size))) + (set! (-> v0-0 vec-data) (-> v0-0 data)) + (set! + (-> v0-0 adgif-data) + (the-as (inline-array adgif-shader) (&-> v0-0 data vec-data-size)) + ) v0-0 ) ) @@ -739,7 +745,7 @@ (-> pkt2 dma) (new 'static 'dma-tag :id (dma-tag-id ref) - :addr (+ (-> sprites vec-data) (* 48 start-sprite-idx)) + :addr (the-as int (&+ (-> sprites vec-data) (* 48 start-sprite-idx))) :qwc qwc-pkt2 ) ) @@ -758,7 +764,7 @@ (-> pkt3 dma) (new 'static 'dma-tag :id (dma-tag-id ref) - :addr (+ (-> sprites adgif-data) (* 80 start-sprite-idx)) + :addr (+ (the-as int (-> sprites adgif-data)) (* 80 start-sprite-idx)) :qwc qwc-pkt3 ) ) @@ -854,7 +860,7 @@ (-> pkt2 dma) (new 'static 'dma-tag :id (dma-tag-id ref) - :addr (+ (-> sprites vec-data) (* 48 start-sprite-idx)) + :addr (the-as int (&+ (-> sprites vec-data) (* 48 start-sprite-idx))) :qwc qwc-pkt2 ) ) @@ -873,7 +879,7 @@ (-> pkt3 dma) (new 'static 'dma-tag :id (dma-tag-id ref) - :addr (+ (-> sprites adgif-data) (* 80 start-sprite-idx)) + :addr (the-as int (-> sprites adgif-data start-sprite-idx)) :qwc qwc-pkt3 ) ) diff --git a/test/decompiler/reference/engine/ps2/memcard-h_REF.gc b/test/decompiler/reference/engine/ps2/memcard-h_REF.gc index b746060847..2c85df335a 100644 --- a/test/decompiler/reference/engine/ps2/memcard-h_REF.gc +++ b/test/decompiler/reference/engine/ps2/memcard-h_REF.gc @@ -1,7 +1,13 @@ ;;-*-Lisp-*- (in-package goal) -;; type mc-handle is defined here, but it is unknown to the decompiler +;; definition of type mc-handle +(deftype mc-handle (int32) + () + :method-count-assert 9 + :size-assert #x4 + :flag-assert #x900000004 + ) ;; definition of type mc-file-info (deftype mc-file-info (structure) diff --git a/test/decompiler/reference/engine/sound/gsound_REF.gc b/test/decompiler/reference/engine/sound/gsound_REF.gc index b9546b89f2..5e28183373 100644 --- a/test/decompiler/reference/engine/sound/gsound_REF.gc +++ b/test/decompiler/reference/engine/sound/gsound_REF.gc @@ -194,7 +194,7 @@ ) ;; definition for function set-language -(defun set-language ((arg0 int)) +(defun set-language ((arg0 language-enum)) (kset-language arg0) (let ((cmd (the-as sound-rpc-set-language (add-element *sound-loader-rpc*)))) (set! (-> cmd command) (sound-command set-language)) @@ -347,7 +347,7 @@ (not *progress-process*) (!= (-> *progress-process* 0 display-state) 32) ) - (activate-progress *dproc* 32) + (activate-progress *dproc* (progress-screen no-disc)) ) ) ((nonzero? (-> *sound-iop-info* dirtycd)) @@ -356,7 +356,7 @@ (not *progress-process*) (!= (-> *progress-process* 0 display-state) 33) ) - (activate-progress *dproc* 33) + (activate-progress *dproc* (progress-screen bad-disc)) ) ) ) diff --git a/test/decompiler/reference/engine/target/target-part_REF.gc b/test/decompiler/reference/engine/target/target-part_REF.gc index 5bd97285e3..faa1742e12 100644 --- a/test/decompiler/reference/engine/target/target-part_REF.gc +++ b/test/decompiler/reference/engine/target/target-part_REF.gc @@ -251,91 +251,98 @@ (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 #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46400000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 12288.0 + :random-rangef 4096.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xe + :initial-valuef (the-as float #x4) + :random-multf (the-as float #x1) ) - (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 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x4375c28f - :random-mult #x3f800000 + :initial-valuef 245.76 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (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 + :initial-valuef 128.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x4423d70a - :random-mult #x3f800000 + :initial-valuef 655.36 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1042648050 - :random-range #x425a740e - :random-mult #x3f800000 + :initial-valuef -27.306667 + :random-rangef 54.613335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x40cccccd - :random-mult #x3f800000 + :initial-valuef 6.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 10 - :random-mult 1 + :initial-valuef (the-as float #xa) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x3a) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 58) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -350,8 +357,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1088170230 - :random-mult #x3f800000 + :initial-valuef -0.64 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -364,75 +371,74 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 14 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47400000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x10 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 49152.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x10 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1030643020 - :random-mult #x3f800000 + :initial-valuef -72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1078588576 - :random-mult #x3f800000 + :initial-valuef -1.4222221 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 42 - :random-mult 1 + :initial-valuef (the-as float #x2a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -462,140 +468,147 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 25 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41c00000 - :random-mult #x3f800000 + :initial-valuef 24.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41000000 - :random-range #x42600000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 56.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x44088889 - :random-range #x442aaaab - :random-mult #x3f800000 + :initial-valuef 546.13336 + :random-rangef 682.6667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x425a740e - :random-mult #x3f800000 + :initial-valuef 54.613335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1030643020 - :random-range #x4311a2b4 - :random-mult #x3f800000 + :initial-valuef -72.81778 + :random-rangef 145.63556 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1078588575 - :random-mult #x3f800000 + :initial-valuef -1.4222223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1095365791 - :random-mult #x3f800000 + :initial-valuef -0.35555556 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value #x3eaec33e - :random-mult #x3f800000 + :initial-valuef 0.34133333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f333333 - :random-mult #x3f800000 + :initial-valuef 0.7 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xb4 - :random-mult 1 + :initial-valuef (the-as float #xb4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 90 - :random-mult 1 + :initial-valuef (the-as float #x5a) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x3d) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 61) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x46800000 - :random-mult #x3f800000 + :initial-valuef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -608,114 +621,121 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x41000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x4499999a - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1070199967 - :random-mult #x3f800000 + :initial-valuef -2.8444445 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1085113048 - :random-mult #x3f800000 + :initial-valuef -0.82222223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f333333 - :random-mult #x3f800000 + :initial-valuef 0.7 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 90 - :random-mult 1 + :initial-valuef (the-as float #x5a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 45 - :random-mult 1 + :initial-valuef (the-as float #x2d) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x3d) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 61) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x46800000 - :random-mult #x3f800000 + :initial-valuef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -746,127 +766,134 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 23 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45c00000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 6144.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41000000 - :random-range #x42600000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 56.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x425a740e - :random-mult #x3f800000 + :initial-valuef 54.613335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1030643020 - :random-range #x4311a2b4 - :random-mult #x3f800000 + :initial-valuef -72.81778 + :random-rangef 145.63556 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1078588575 - :random-mult #x3f800000 + :initial-valuef -1.4222223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1095365791 - :random-mult #x3f800000 + :initial-valuef -0.35555556 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value #x3eaec33e - :random-mult #x3f800000 + :initial-valuef 0.34133333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xb4 - :random-mult 1 + :initial-valuef (the-as float #xb4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 90 - :random-mult 1 + :initial-valuef (the-as float #x5a) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x3d) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 61) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x45000000 - :random-mult #x3f800000 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -882,20 +909,20 @@ (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value -1086977183 - :random-mult #x3f800000 + :initial-valuef -0.7111111 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value #x3f360b61 - :random-mult #x3f800000 + :initial-valuef 0.7111111 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value #x3eb60b61 - :random-mult #x3f800000 + :initial-valuef 0.35555556 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -908,102 +935,109 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 19 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f28f5c3 - :random-mult #x3f800000 + :initial-valuef 0.66 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x41000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1070199967 - :random-mult #x3f800000 + :initial-valuef -2.8444445 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1085113048 - :random-mult #x3f800000 + :initial-valuef -0.82222223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 90 - :random-mult 1 + :initial-valuef (the-as float #x5a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 45 - :random-mult 1 + :initial-valuef (the-as float #x2d) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x3d) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 61) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x43cccccd - :random-mult #x3f800000 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1016,71 +1050,74 @@ (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 #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46800000 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef 16384.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1065353216 - :random-mult #x3f800000 + :initial-valuef -4.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value #x3eaec33e - :random-mult #x3f800000 + :initial-valuef 0.34133333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 10 - :random-mult 1 + :initial-valuef (the-as float #xa) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1127,109 +1164,112 @@ (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 #x200200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40800000 - :random-mult #x3f800000 + :initial-valuef 4.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45400000 - :random-mult #x3f800000 + :initial-valuef 3072.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46400000 - :random-mult #x3f800000 + :initial-valuef 12288.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xe + :initial-valuef (the-as float #x4) + :random-multf (the-as float #x1) ) - (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 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x4419999a - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 614.4 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43400000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43400000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x43000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 128.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x42200000 - :random-mult #x3f800000 + :initial-valuef 40.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1042648050 - :random-range #x425a740e - :random-mult #x3f800000 + :initial-valuef -27.306667 + :random-rangef 54.613335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x1 - :initial-value #x42200000 - :random-mult #x3f800000 + :initial-valuef 40.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x40088889 - :random-mult #x3f800000 + :initial-valuef 2.1333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 30 - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 15 - :random-mult 1 + :initial-valuef (the-as float #xf) + :random-multf (the-as float #x1) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 67) (new 'static 'sp-field-init-spec - :field #x3f - :flags #x1 - :random-mult #x3f800000 + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x43) ) + (new 'static 'sp-field-init-spec :field #x3f :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -1244,8 +1284,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1073182583 - :random-mult #x3f800000 + :initial-valuef -2.1333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1258,70 +1298,73 @@ (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 #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46400000 - :random-mult #x3f800000 + :initial-valuef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43440000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43440000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43440000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41e00000 - :random-mult #x3f800000 + :initial-valuef 28.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 10 - :random-mult 1 + :initial-valuef (the-as float #xa) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1372,129 +1415,128 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 22 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-copy-target-y-rot + :sym 'birth-func-copy-target-y-rot ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x4323d70a - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 163.84 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1084591090 - :random-mult #x3f800000 + :initial-valuef -0.85333335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x3f - :flags #x1 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x3f :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -1506,129 +1548,128 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 22 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-copy-target-y-rot + :sym 'birth-func-copy-target-y-rot ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x44800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x43a3d70a - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 327.68 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1084591090 - :random-mult #x3f800000 + :initial-valuef -0.85333335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x3f - :flags #x1 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x3f :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -1640,57 +1681,56 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 11 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-range #x41000000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-rangef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x25c - :random-mult 1 + :initial-valuef (the-as float #x25c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 8 - :random-mult 1 + :initial-valuef (the-as float #x8) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x30 :flags #x1 - :initial-value #x41000000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'part-tracker-track-target-joint + :sym 'part-tracker-track-target-joint ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1703,110 +1743,101 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 19 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #xa - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #xa :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -978670933 - :random-range #x462aaaab - :random-mult #x3f800000 + :initial-valuef -5461.3335 + :random-rangef 10922.667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-range #x434ccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-rangef 204.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42000000 - :random-range #x42b80000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 92.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42c00000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x18 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x2 - :initial-value -1017482226 - :random-range 1 - :random-mult #x43da740e - ) - (new 'static 'sp-field-init-spec - :field #x1a - :flags #x1 - :random-mult #x3f800000 + :initial-valuef -218.45334 + :random-rangef (the-as float #x1) + :random-multf 436.90668 ) + (new 'static 'sp-field-init-spec :field #x1a :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1b :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1097070143 - :random-mult #x3f800000 + :initial-valuef -0.30476192 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x25c - :random-mult 1 + :initial-valuef (the-as float #x25c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x8c - :random-mult 1 + :initial-valuef (the-as float #x8c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1837,125 +1868,128 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1104947446 - :random-mult #x3f800000 + :initial-valuef -0.16 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1968,125 +2002,128 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x44800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x40da740e - :random-mult #x3f800000 + :initial-valuef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1101368306 - :random-mult #x3f800000 + :initial-valuef -0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2099,123 +2136,126 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43000000 - :random-range 2 - :random-mult #x42000000 + :initial-valuef 128.0 + :random-rangef (the-as float #x2) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x42000000 - :random-range 1 - :random-mult #x42000000 + :initial-valuef 32.0 + :random-rangef (the-as float #x1) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x4275c28f - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 61.44 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1062288578 - :random-range #x402ec33e - :random-mult #x3f800000 + :initial-valuef -5.4613333 + :random-rangef 2.7306666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x45aaaaab - :random-range #x460e38e4 - :random-mult #x3f800000 + :initial-valuef 5461.3335 + :random-rangef 9102.223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2246,125 +2286,128 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1104947446 - :random-mult #x3f800000 + :initial-valuef -0.16 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2377,125 +2420,128 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x44800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x40da740e - :random-mult #x3f800000 + :initial-valuef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1101368306 - :random-mult #x3f800000 + :initial-valuef -0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2508,123 +2554,126 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43000000 - :random-range 2 - :random-mult #x42000000 + :initial-valuef 128.0 + :random-rangef (the-as float #x2) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x42000000 - :random-range 1 - :random-mult #x42000000 + :initial-valuef 32.0 + :random-rangef (the-as float #x1) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x4275c28f - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 61.44 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1062288578 - :random-range #x402ec33e - :random-mult #x3f800000 + :initial-valuef -5.4613333 + :random-rangef 2.7306666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x45aaaaab - :random-range #x460e38e4 - :random-mult #x3f800000 + :initial-valuef 5461.3335 + :random-rangef 9102.223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2655,126 +2704,129 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43440000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43440000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43440000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1104947446 - :random-mult #x3f800000 + :initial-valuef -0.16 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2787,126 +2839,129 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x44800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43440000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43440000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43440000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x40da740e - :random-mult #x3f800000 + :initial-valuef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1101368306 - :random-mult #x3f800000 + :initial-valuef -0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2919,123 +2974,126 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x4275c28f - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 61.44 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1062288578 - :random-range #x402ec33e - :random-mult #x3f800000 + :initial-valuef -5.4613333 + :random-rangef 2.7306666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x45aaaaab - :random-range #x460e38e4 - :random-mult #x3f800000 + :initial-valuef 5461.3335 + :random-rangef 9102.223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3084,125 +3142,128 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1104947446 - :random-mult #x3f800000 + :initial-valuef -0.16 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3215,125 +3276,128 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x44800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x40da740e - :random-mult #x3f800000 + :initial-valuef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1101368306 - :random-mult #x3f800000 + :initial-valuef -0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3346,128 +3410,131 @@ (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 #x201700) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201700) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4419999a - :random-range #x44b33333 - :random-mult #x3f800000 + :initial-valuef 614.4 + :random-rangef 1433.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x4419999a - :random-mult #x3f800000 + :initial-valuef 614.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :random-range #x40000000 - :random-mult #x42800000 + :random-rangef 2.0 + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 2 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x2) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x4275c28f - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 61.44 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1009093618 - :random-range #x445a740e - :random-mult #x3f800000 + :initial-valuef -436.90668 + :random-rangef 873.81335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1062288578 - :random-range #x405a740e - :random-mult #x3f800000 + :initial-valuef -5.4613333 + :random-rangef 3.4133334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x45aaaaab - :random-range #x460e38e4 - :random-mult #x3f800000 + :initial-valuef 5461.3335 + :random-rangef 9102.223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3497,124 +3564,127 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1104947446 - :random-mult #x3f800000 + :initial-valuef -0.16 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3627,124 +3697,127 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x44800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x40da740e - :random-mult #x3f800000 + :initial-valuef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1101368306 - :random-mult #x3f800000 + :initial-valuef -0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3793,124 +3866,127 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1104947446 - :random-mult #x3f800000 + :initial-valuef -0.16 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3923,124 +3999,127 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x44800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x40da740e - :random-mult #x3f800000 + :initial-valuef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1101368306 - :random-mult #x3f800000 + :initial-valuef -0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4070,114 +4149,117 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 19 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x428c0000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 70.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42200000 - :random-range #x41a00000 - :random-mult #x3f800000 + :initial-valuef 40.0 + :random-rangef 20.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41c00000 - :random-range #x41c00000 - :random-mult #x3f800000 + :initial-valuef 24.0 + :random-rangef 24.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1104947446 - :random-mult #x3f800000 + :initial-valuef -0.16 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4190,126 +4272,129 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x44800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x428c0000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 70.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42200000 - :random-range #x41a00000 - :random-mult #x3f800000 + :initial-valuef 40.0 + :random-rangef 20.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x40da740e - :random-mult #x3f800000 + :initial-valuef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1101368306 - :random-mult #x3f800000 + :initial-valuef -0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4354,94 +4439,97 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1091957087 - :random-mult #x3f800000 + :initial-valuef -0.45714286 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f770a3d - :random-mult #x3f800000 + :initial-valuef 0.965 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x69 - :random-mult 1 + :initial-valuef (the-as float #x69) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4503,75 +4591,78 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 14 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200e00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200e00) + ) (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-target-orient + :sym 'birth-func-target-orient ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -998244352 - :random-mult #x3f800000 + :initial-valuef -1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1114529100 - :random-mult #x3f800000 + :initial-valuef -0.07111111 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x41a - :random-mult 1 + :initial-valuef (the-as float #x41a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4584,96 +4675,99 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43440000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43440000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43440000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 196.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41c00000 - :random-range #x41c00000 - :random-mult #x3f800000 + :initial-valuef 24.0 + :random-rangef 24.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1091957087 - :random-mult #x3f800000 + :initial-valuef -0.45714286 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f770a3d - :random-mult #x3f800000 + :initial-valuef 0.965 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x69 - :random-mult 1 + :initial-valuef (the-as float #x69) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4752,121 +4846,124 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 22 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -981467136 - :random-mult #x3f800000 + :initial-valuef -4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :random-range -1051036658 - :random-mult #x3f800000 + :random-rangef -13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x40da740e - :random-mult #x3f800000 + :initial-valuef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3e23d70a - :random-mult #x3f800000 + :initial-valuef 0.16 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1098133659 - :random-mult #x3f800000 + :initial-valuef -0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x384 - :random-mult 1 + :initial-valuef (the-as float #x384) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 75 - :random-range 74 - :random-mult 1 + :initial-valuef (the-as float #x4b) + :random-rangef (the-as float #x4a) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x5a) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 90) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x46800000 - :random-mult #x3f800000 + :initial-valuef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x46400000 - :random-mult #x3f800000 + :random-rangef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4879,18 +4976,18 @@ (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 #x24 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #x96 - :random-range #x95 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-rangef (the-as float #x95) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #x5b) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 91) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -4905,8 +5002,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1113336054 - :random-mult #x3f800000 + :initial-valuef -0.08 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4951,94 +5048,97 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1091957087 - :random-mult #x3f800000 + :initial-valuef -0.45714286 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f770a3d - :random-mult #x3f800000 + :initial-valuef 0.965 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x69 - :random-mult 1 + :initial-valuef (the-as float #x69) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -5083,96 +5183,99 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x428c0000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 70.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42200000 - :random-range #x41a00000 - :random-mult #x3f800000 + :initial-valuef 40.0 + :random-rangef 20.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1091957087 - :random-mult #x3f800000 + :initial-valuef -0.45714286 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f770a3d - :random-mult #x3f800000 + :initial-valuef 0.965 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x69 - :random-mult 1 + :initial-valuef (the-as float #x69) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -5234,95 +5337,98 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1091957087 - :random-mult #x3f800000 + :initial-valuef -0.45714286 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f770a3d - :random-mult #x3f800000 + :initial-valuef 0.965 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x69 - :random-mult 1 + :initial-valuef (the-as float #x69) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -5335,75 +5441,78 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 14 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200e00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200e00) + ) (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-target-orient + :sym 'birth-func-target-orient ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -998244352 - :random-mult #x3f800000 + :initial-valuef -1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42400000 - :random-mult #x3f800000 + :initial-valuef 48.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1118145522 - :random-mult #x3f800000 + :initial-valuef -0.053333335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x41a - :random-mult 1 + :initial-valuef (the-as float #x41a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -5465,95 +5574,98 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1091957087 - :random-mult #x3f800000 + :initial-valuef -0.45714286 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f770a3d - :random-mult #x3f800000 + :initial-valuef 0.965 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x69 - :random-mult 1 + :initial-valuef (the-as float #x69) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -5566,75 +5678,78 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 14 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200e00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200e00) + ) (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-target-orient + :sym 'birth-func-target-orient ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -998244352 - :random-mult #x3f800000 + :initial-valuef -1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1122917708 - :random-mult #x3f800000 + :initial-valuef -0.035555556 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x41a - :random-mult 1 + :initial-valuef (the-as float #x41a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -5695,95 +5810,98 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1091957087 - :random-mult #x3f800000 + :initial-valuef -0.45714286 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f770a3d - :random-mult #x3f800000 + :initial-valuef 0.965 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x69 - :random-mult 1 + :initial-valuef (the-as float #x69) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -5796,75 +5914,78 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 14 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200e00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200e00) + ) (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-target-orient + :sym 'birth-func-target-orient ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -998244352 - :random-mult #x3f800000 + :initial-valuef -1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1122917708 - :random-mult #x3f800000 + :initial-valuef -0.035555556 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x41a - :random-mult 1 + :initial-valuef (the-as float #x41a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -5877,118 +5998,121 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 19 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x40c00000 - :random-mult #x3f800000 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43000000 - :random-range 2 - :random-mult #x42000000 + :initial-valuef 128.0 + :random-rangef (the-as float #x2) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x42000000 - :random-range 1 - :random-mult #x42000000 + :initial-valuef 32.0 + :random-rangef (the-as float #x1) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :initial-value -1067813874 - :random-range #x40da740e - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-rangef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x41a3d70a - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 20.48 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1b :flags #x1 - :initial-value -1067813874 - :random-range #x40da740e - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-rangef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1070677186 - :random-range #x3faec33e - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-rangef 1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -6001,118 +6125,121 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 19 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x40c00000 - :random-mult #x3f800000 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43000000 - :random-range 2 - :random-mult #x42000000 + :initial-valuef 128.0 + :random-rangef (the-as float #x2) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x42000000 - :random-range 1 - :random-mult #x42000000 + :initial-valuef 32.0 + :random-rangef (the-as float #x1) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :initial-value -1067813874 - :random-range #x40da740e - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-rangef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x41a3d70a - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 20.48 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1b :flags #x1 - :initial-value -1067813874 - :random-range #x40da740e - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-rangef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1070677186 - :random-range #x3faec33e - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-rangef 1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -6125,123 +6252,126 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201700) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201700) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x40000000 - :random-mult #x3f800000 + :random-rangef 2.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x444ccccd - :random-range #x444ccccd - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-rangef 819.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x43cccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :random-range #x40000000 - :random-mult #x42800000 + :random-rangef 2.0 + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 2 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x2) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :initial-value -1067813874 - :random-range #x40da740e - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-rangef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x41a3d70a - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 20.48 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1b :flags #x1 - :initial-value -1067813874 - :random-range #x40da740e - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-rangef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1009093618 - :random-range #x445a740e - :random-mult #x3f800000 + :initial-valuef -436.90668 + :random-rangef 873.81335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1070677186 - :random-range #x3faec33e - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-rangef 1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -6254,118 +6384,121 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 19 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x40c00000 - :random-mult #x3f800000 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :initial-value -1067813874 - :random-range #x40da740e - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-rangef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x41a3d70a - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 20.48 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1b :flags #x1 - :initial-value -1067813874 - :random-range #x40da740e - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-rangef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1070677186 - :random-range #x3faec33e - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-rangef 1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -6428,126 +6561,129 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40c00000 - :random-range #x40c00000 - :random-mult #x3f800000 + :initial-valuef 6.0 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-range #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-rangef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1103754399 - :random-mult #x3f800000 + :initial-valuef -0.17777778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1098133659 - :random-mult #x3f800000 + :initial-valuef -0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f70a3d7 - :random-mult #x3f800000 + :initial-valuef 0.94 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xb4 - :random-mult 1 + :initial-valuef (the-as float #xb4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -6560,123 +6696,126 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x41000000 - :random-mult #x3f800000 + :random-rangef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43000000 - :random-range 2 - :random-mult #x42000000 + :initial-valuef 128.0 + :random-rangef (the-as float #x2) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x42000000 - :random-range 1 - :random-mult #x42000000 + :initial-valuef 32.0 + :random-rangef (the-as float #x1) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42088889 - :random-range #x415a740e - :random-mult #x3f800000 + :initial-valuef 34.133335 + :random-rangef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1065151889 - :random-range #x4003126f - :random-mult #x3f800000 + :initial-valuef -4.096 + :random-rangef 2.048 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x45aaaaab - :random-range #x460e38e4 - :random-mult #x3f800000 + :initial-valuef 5461.3335 + :random-rangef 9102.223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -6706,126 +6845,129 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40c00000 - :random-range #x40c00000 - :random-mult #x3f800000 + :initial-valuef 6.0 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-range #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-rangef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1103754399 - :random-mult #x3f800000 + :initial-valuef -0.17777778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1098133659 - :random-mult #x3f800000 + :initial-valuef -0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f70a3d7 - :random-mult #x3f800000 + :initial-valuef 0.94 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xb4 - :random-mult 1 + :initial-valuef (the-as float #xb4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -6838,123 +6980,126 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x41000000 - :random-mult #x3f800000 + :random-rangef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43000000 - :random-range 2 - :random-mult #x42000000 + :initial-valuef 128.0 + :random-rangef (the-as float #x2) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x42000000 - :random-range 1 - :random-mult #x42000000 + :initial-valuef 32.0 + :random-rangef (the-as float #x1) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42088889 - :random-range #x415a740e - :random-mult #x3f800000 + :initial-valuef 34.133335 + :random-rangef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1065151889 - :random-range #x4003126f - :random-mult #x3f800000 + :initial-valuef -4.096 + :random-rangef 2.048 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x45aaaaab - :random-range #x460e38e4 - :random-mult #x3f800000 + :initial-valuef 5461.3335 + :random-rangef 9102.223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -6984,126 +7129,129 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40c00000 - :random-range #x40c00000 - :random-mult #x3f800000 + :initial-valuef 6.0 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-range #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-rangef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1103754399 - :random-mult #x3f800000 + :initial-valuef -0.17777778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1098133659 - :random-mult #x3f800000 + :initial-valuef -0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f70a3d7 - :random-mult #x3f800000 + :initial-valuef 0.94 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xb4 - :random-mult 1 + :initial-valuef (the-as float #xb4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -7116,128 +7264,131 @@ (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 #x201700) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201700) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x41000000 - :random-mult #x3f800000 + :random-rangef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4419999a - :random-range #x44b33333 - :random-mult #x3f800000 + :initial-valuef 614.4 + :random-rangef 1433.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x4419999a - :random-mult #x3f800000 + :initial-valuef 614.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :random-range #x40000000 - :random-mult #x42800000 + :random-rangef 2.0 + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 2 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x2) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42088889 - :random-range #x415a740e - :random-mult #x3f800000 + :initial-valuef 34.133335 + :random-rangef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1009093618 - :random-range #x445a740e - :random-mult #x3f800000 + :initial-valuef -436.90668 + :random-rangef 873.81335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1065151889 - :random-range #x4003126f - :random-mult #x3f800000 + :initial-valuef -4.096 + :random-rangef 2.048 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x45aaaaab - :random-range #x460e38e4 - :random-mult #x3f800000 + :initial-valuef 5461.3335 + :random-rangef 9102.223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -7266,125 +7417,128 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40c00000 - :random-range #x40c00000 - :random-mult #x3f800000 + :initial-valuef 6.0 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-range #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-rangef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1103754399 - :random-mult #x3f800000 + :initial-valuef -0.17777778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1098133659 - :random-mult #x3f800000 + :initial-valuef -0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f70a3d7 - :random-mult #x3f800000 + :initial-valuef 0.94 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xb4 - :random-mult 1 + :initial-valuef (the-as float #xb4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -7413,127 +7567,130 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40c00000 - :random-range #x40c00000 - :random-mult #x3f800000 + :initial-valuef 6.0 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-range #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-rangef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x428c0000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 70.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42200000 - :random-range #x41a00000 - :random-mult #x3f800000 + :initial-valuef 40.0 + :random-rangef 20.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1103754399 - :random-mult #x3f800000 + :initial-valuef -0.17777778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1098133659 - :random-mult #x3f800000 + :initial-valuef -0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f70a3d7 - :random-mult #x3f800000 + :initial-valuef 0.94 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xb4 - :random-mult 1 + :initial-valuef (the-as float #xb4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -7562,127 +7719,130 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40c00000 - :random-range #x40c00000 - :random-mult #x3f800000 + :initial-valuef 6.0 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-range #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-rangef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1103754399 - :random-mult #x3f800000 + :initial-valuef -0.17777778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1098133659 - :random-mult #x3f800000 + :initial-valuef -0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f70a3d7 - :random-mult #x3f800000 + :initial-valuef 0.94 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xb4 - :random-mult 1 + :initial-valuef (the-as float #xb4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -7727,125 +7887,128 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40c00000 - :random-range #x40c00000 - :random-mult #x3f800000 + :initial-valuef 6.0 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4519999a - :random-range #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-rangef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42a3d70a - :random-range #x4223d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-rangef 40.96 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1103754399 - :random-mult #x3f800000 + :initial-valuef -0.17777778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1098133659 - :random-mult #x3f800000 + :initial-valuef -0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f70a3d7 - :random-mult #x3f800000 + :initial-valuef 0.94 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xb4 - :random-mult 1 + :initial-valuef (the-as float #xb4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -7874,97 +8037,100 @@ (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 #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x41000000 - :random-mult #x3f800000 + :random-rangef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43000000 - :random-range 2 - :random-mult #x42000000 + :initial-valuef 128.0 + :random-rangef (the-as float #x2) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x42000000 - :random-range 1 - :random-mult #x42000000 + :initial-valuef 32.0 + :random-rangef (the-as float #x1) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1062288578 - :random-range #x405a740e - :random-mult #x3f800000 + :initial-valuef -5.4613333 + :random-rangef 3.4133334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -7977,97 +8143,100 @@ (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 #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x41000000 - :random-mult #x3f800000 + :random-rangef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43000000 - :random-range 2 - :random-mult #x42000000 + :initial-valuef 128.0 + :random-rangef (the-as float #x2) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x42000000 - :random-range 1 - :random-mult #x42000000 + :initial-valuef 32.0 + :random-rangef (the-as float #x1) + :random-multf 32.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1062288578 - :random-range #x405a740e - :random-mult #x3f800000 + :initial-valuef -5.4613333 + :random-rangef 3.4133334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -8080,97 +8249,100 @@ (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 #x200400) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200400) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x41000000 - :random-mult #x3f800000 + :random-rangef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x438f5c29 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 286.72 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x2 - :initial-value #x43440000 - :random-range 1 - :random-mult #x42800000 + :initial-valuef 196.0 + :random-rangef (the-as float #x1) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1062288578 - :random-range #x405a740e - :random-mult #x3f800000 + :initial-valuef -5.4613333 + :random-rangef 3.4133334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -8183,102 +8355,105 @@ (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 #x201700) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201700) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :random-range #x41000000 - :random-mult #x3f800000 + :random-rangef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1009988403 - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef -409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -993211187 - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef -1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4419999a - :random-range #x44b33333 - :random-mult #x3f800000 + :initial-valuef 614.4 + :random-rangef 1433.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x4419999a - :random-mult #x3f800000 + :initial-valuef 614.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :random-range #x40000000 - :random-mult #x42800000 + :random-rangef 2.0 + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x2 - :initial-value #x42800000 - :random-range 2 - :random-mult #x42800000 + :initial-valuef 64.0 + :random-rangef (the-as float #x2) + :random-multf 64.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1009093618 - :random-range #x445a740e - :random-mult #x3f800000 + :initial-valuef -436.90668 + :random-rangef 873.81335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1062288578 - :random-range #x405a740e - :random-mult #x3f800000 + :initial-valuef -5.4613333 + :random-rangef 3.4133334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -8542,98 +8717,101 @@ (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 #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x444ccccd - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43800000 - :random-mult #x3f800000 + :initial-valuef 256.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x43000000 - :random-mult #x3f800000 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x425a740e - :random-range #x4323d70a - :random-mult #x3f800000 + :initial-valuef 54.613335 + :random-rangef 163.84 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1055331626 - :random-mult #x3f800000 + :initial-valuef -9.557333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1062288578 - :random-mult #x3f800000 + :initial-valuef -5.4613333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x168 - :random-mult 1 + :initial-valuef (the-as float #x168) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4009 - :random-mult 1 + :initial-valuef (the-as float #x4009) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x462aaaab - :random-mult #x3f800000 + :random-rangef 10922.667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -8646,133 +8824,132 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 23 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40a00000 - :random-mult #x3f800000 + :initial-valuef 5.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x45000000 - :random-mult #x3f800000 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range #x46400000 - :random-mult #x3f800000 + :random-rangef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x43000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :random-rangef 128.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x435a740e - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 218.45334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x42c0c0c1 - :random-mult #x3f800000 + :initial-valuef 96.37647 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1025870834 - :random-range #x435a740e - :random-mult #x3f800000 + :initial-valuef -109.22667 + :random-rangef 218.45334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1077886783 - :random-mult #x3f800000 + :initial-valuef -1.5058824 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f7ae148 - :random-mult #x3f800000 + :initial-valuef 0.98 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 81 - :random-mult 1 + :initial-valuef (the-as float #x51) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x45aaaaab - :random-mult #x3f800000 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -8785,134 +8962,133 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 23 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value #x45000000 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x43000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :random-rangef 128.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :random-range #x40da740e - :random-mult #x3f800000 + :random-rangef 6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x43360b60 - :random-mult #x3f800000 + :initial-valuef 182.04443 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1025870834 - :random-range #x435a740e - :random-mult #x3f800000 + :initial-valuef -109.22667 + :random-rangef 218.45334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1070199968 - :random-mult #x3f800000 + :initial-valuef -2.8444443 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f7ae148 - :random-mult #x3f800000 + :initial-valuef 0.98 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 42 - :random-mult 1 + :initial-valuef (the-as float #x2a) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x46800000 - :random-mult #x3f800000 + :initial-valuef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -8925,163 +9101,162 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 28 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -981467136 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef -4096.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range #x46400000 - :random-mult #x3f800000 + :random-rangef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -981467136 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef -4096.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46000000 - :random-range #x46400000 - :random-mult #x3f800000 + :initial-valuef 8192.0 + :random-rangef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (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 + :initial-valuef 255.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x425a740e - :random-range #x425a740e - :random-mult #x3f800000 + :initial-valuef 54.613335 + :random-rangef 54.613335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x4211a2b4 - :random-mult #x3f800000 + :initial-valuef 36.40889 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1025870834 - :random-range #x435a740e - :random-mult #x3f800000 + :initial-valuef -109.22667 + :random-rangef 218.45334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value -1089400559 - :random-mult #x3f800000 + :initial-valuef -0.56666666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1089400559 - :random-mult #x3f800000 + :initial-valuef -0.56666666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value -1089400559 - :random-mult #x3f800000 + :initial-valuef -0.56666666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3e19999a - :random-mult #x3f800000 + :initial-valuef 0.15 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f7851ec - :random-mult #x3f800000 + :initial-valuef 0.97 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x1c2 - :random-mult 1 + :initial-valuef (the-as float #x1c2) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 81 - :random-range 80 - :random-mult 1 + :initial-valuef (the-as float #x51) + :random-rangef (the-as float #x50) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x7d7 + :initial-valuef (the-as float #x7d7) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x45aaaaab - :random-mult #x3f800000 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -9097,8 +9272,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1113336054 - :random-mult #x3f800000 + :initial-valuef -0.08 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -9111,117 +9286,116 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45c00000 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef 6144.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x415a740e - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-range #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-rangef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3f5a740e - :random-mult #x3f800000 + :initial-valuef 0.85333335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f7ae148 - :random-mult #x3f800000 + :initial-valuef 0.98 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x1c2 - :random-mult 1 + :initial-valuef (the-as float #x1c2) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 15 - :random-range 59 - :random-mult 1 + :initial-valuef (the-as float #xf) + :random-rangef (the-as float #x3b) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x7d8 + :initial-valuef (the-as float #x7d8) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -9237,8 +9411,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1097751884 - :random-mult #x3f800000 + :initial-valuef -0.28444445 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -9325,99 +9499,102 @@ (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 #x200a00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200a00) + ) (new 'static 'sp-field-init-spec :field #x4 :flags #x5 - :func 'birth-func-target-orient + :sym 'birth-func-target-orient ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42dc0000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 110.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41000000 - :random-range #x42200000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 40.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-range #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-rangef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1102263091 - :random-mult #x3f800000 + :initial-valuef -0.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xf0 - :random-mult 1 + :initial-valuef (the-as float #xf0) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x30 :flags #x1 - :initial-value -973078528 - :random-mult #x3f800000 + :initial-valuef -8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -9481,63 +9658,63 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 12 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x40800000) + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46600000 - :random-mult #x3f800000 + :initial-valuef 14336.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x47500000 - :random-mult #x3f800000 + :initial-valuef 53248.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x2204 - :random-mult 1 + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'part-first-person-hud-left-func + :sym 'part-first-person-hud-left-func ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -9550,69 +9727,69 @@ (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 #x40800000) + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46600000 - :random-mult #x3f800000 + :initial-valuef 14336.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :initial-value #x47000000 - :random-mult #x3f800000 + :initial-valuef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x47500000 - :random-mult #x3f800000 + :initial-valuef 53248.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x2204 - :random-mult 1 + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'part-first-person-hud-right-func + :sym 'part-first-person-hud-right-func ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -9625,69 +9802,65 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 12 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x40800400) + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0004883) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x2200 - :random-mult 1 + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'part-first-person-hud-selector-func + :sym 'part-first-person-hud-selector-func ) (new 'static 'sp-field-init-spec :field #x43) ) ) ) - - - - diff --git a/test/decompiler/reference/engine/target/target-util_REF.gc b/test/decompiler/reference/engine/target/target-util_REF.gc index 97acbe15d9..5db86d5edb 100644 --- a/test/decompiler/reference/engine/target/target-util_REF.gc +++ b/test/decompiler/reference/engine/target/target-util_REF.gc @@ -30,7 +30,7 @@ :settings (new 'static 'shadow-settings :center - (new 'static 'vector :w 0.000000000000000000000000000000000000000000003) + (new 'static 'vector :w (the-as float #x2)) :shadow-dir (new 'static 'vector :x -0.4226 :y -0.9063 :w 409600.0) :bot-plane (new 'static 'plane :y 1.0 :w 37683.2) diff --git a/test/decompiler/reference/engine/ui/hud-h_REF.gc b/test/decompiler/reference/engine/ui/hud-h_REF.gc index ea0c35b1b8..2d5137255b 100644 --- a/test/decompiler/reference/engine/ui/hud-h_REF.gc +++ b/test/decompiler/reference/engine/ui/hud-h_REF.gc @@ -3,12 +3,12 @@ ;; definition of type hud-icon (deftype hud-icon (basic) - ((icon uint32 :offset-assert 4) - (icon-y int32 :offset-assert 8) - (icon-x int32 :offset-assert 12) - (icon-z int32 :offset-assert 16) - (scale-x float :offset-assert 20) - (scale-y float :offset-assert 24) + ((icon (pointer manipy) :offset-assert 4) + (icon-y int32 :offset-assert 8) + (icon-x int32 :offset-assert 12) + (icon-z int32 :offset-assert 16) + (scale-x float :offset-assert 20) + (scale-y float :offset-assert 24) ) :method-count-assert 9 :size-assert #x1c @@ -29,10 +29,10 @@ ;; definition of type hud-particle (deftype hud-particle (basic) - ((part basic :offset-assert 4) - (init-pos vector :inline :offset-assert 16) - (pos vector :inline :offset-assert 32) - (prev-pos vector :inline :offset-assert 48) + ((part sparticle-launch-control :offset-assert 4) + (init-pos vector :inline :offset-assert 16) + (pos vector :inline :offset-assert 32) + (prev-pos vector :inline :offset-assert 48) ) :method-count-assert 9 :size-assert #x40 diff --git a/test/decompiler/reference/engine/ui/progress-h_REF.gc b/test/decompiler/reference/engine/ui/progress-h_REF.gc index bca023d466..3e0eea26c4 100644 --- a/test/decompiler/reference/engine/ui/progress-h_REF.gc +++ b/test/decompiler/reference/engine/ui/progress-h_REF.gc @@ -94,7 +94,7 @@ (param1 float :offset-assert 24) (param2 float :offset-assert 28) (param3 int32 :offset-assert 32) - (value-to-modify uint32 :offset-assert 36) + (value-to-modify pointer :offset-assert 36) ) :method-count-assert 9 :size-assert #x28 @@ -116,110 +116,111 @@ ;; definition of type progress (deftype progress (process) - ((current-debug-string int32 :offset-assert 112) - (current-debug-language int32 :offset-assert 116) - (current-debug-group int32 :offset-assert 120) - (in-out-position int32 :offset-assert 124) - (display-state uint64 :offset-assert 128) - (next-display-state uint64 :offset-assert 136) - (option-index int32 :offset-assert 144) - (selected-option basic :offset-assert 148) - (completion-percentage float :offset-assert 152) - (ready-to-run basic :offset-assert 156) - (display-level-index int32 :offset-assert 160) - (next-level-index int32 :offset-assert 164) - (task-index int32 :offset-assert 168) - (in-transition basic :offset-assert 172) - (last-in-transition basic :offset-assert 176) - (force-transition basic :offset-assert 180) - (stat-transition basic :offset-assert 184) - (level-transition int32 :offset-assert 188) - (language-selection uint64 :offset-assert 192) - (language-direction basic :offset-assert 200) - (language-transition basic :offset-assert 204) - (language-x-offset int32 :offset-assert 208) - (sides-x-scale float :offset-assert 212) - (sides-y-scale float :offset-assert 216) - (left-x-offset int32 :offset-assert 220) - (right-x-offset int32 :offset-assert 224) - (button-scale float :offset-assert 228) - (slot-scale float :offset-assert 232) - (left-side-x-scale float :offset-assert 236) - (left-side-y-scale float :offset-assert 240) - (right-side-x-scale float :offset-assert 244) - (right-side-y-scale float :offset-assert 248) - (small-orb-y-offset int32 :offset-assert 252) - (big-orb-y-offset int32 :offset-assert 256) - (transition-offset int32 :offset-assert 260) - (transition-offset-invert int32 :offset-assert 264) - (transition-percentage float :offset-assert 268) - (transition-percentage-invert float :offset-assert 272) - (transition-speed float :offset-assert 276) - (total-nb-of-power-cells int32 :offset-assert 280) - (total-nb-of-orbs int32 :offset-assert 284) - (total-nb-of-buzzers int32 :offset-assert 288) - (card-info mc-slot-info :offset-assert 292) - (last-option-index-change uint64 :offset-assert 296) - (video-mode-timeout uint64 :offset-assert 304) - (display-state-stack uint64 5 :offset-assert 312) - (option-index-stack uint32 5 :offset-assert 352) - (display-state-pos int32 :offset-assert 372) - (nb-of-icons int32 :offset-assert 376) - (icons uint32 6 :offset-assert 380) - (max-nb-of-particles int32 :offset-assert 404) - (nb-of-particles int32 :offset-assert 408) - (particles uint32 40 :offset-assert 412) - (particle-state uint32 40 :offset-assert 572) + ((current-debug-string int32 :offset-assert 112) + (current-debug-language int32 :offset-assert 116) + (current-debug-group int32 :offset-assert 120) + (in-out-position int32 :offset-assert 124) + (display-state progress-screen :offset-assert 128) + (next-display-state progress-screen :offset-assert 136) + (option-index int32 :offset-assert 144) + (selected-option basic :offset-assert 148) + (completion-percentage float :offset-assert 152) + (ready-to-run basic :offset-assert 156) + (display-level-index int32 :offset-assert 160) + (next-level-index int32 :offset-assert 164) + (task-index int32 :offset-assert 168) + (in-transition basic :offset-assert 172) + (last-in-transition basic :offset-assert 176) + (force-transition basic :offset-assert 180) + (stat-transition basic :offset-assert 184) + (level-transition int32 :offset-assert 188) + (language-selection uint64 :offset-assert 192) + (language-direction basic :offset-assert 200) + (language-transition basic :offset-assert 204) + (language-x-offset int32 :offset-assert 208) + (sides-x-scale float :offset-assert 212) + (sides-y-scale float :offset-assert 216) + (left-x-offset int32 :offset-assert 220) + (right-x-offset int32 :offset-assert 224) + (button-scale float :offset-assert 228) + (slot-scale float :offset-assert 232) + (left-side-x-scale float :offset-assert 236) + (left-side-y-scale float :offset-assert 240) + (right-side-x-scale float :offset-assert 244) + (right-side-y-scale float :offset-assert 248) + (small-orb-y-offset int32 :offset-assert 252) + (big-orb-y-offset int32 :offset-assert 256) + (transition-offset int32 :offset-assert 260) + (transition-offset-invert int32 :offset-assert 264) + (transition-percentage float :offset-assert 268) + (transition-percentage-invert float :offset-assert 272) + (transition-speed float :offset-assert 276) + (total-nb-of-power-cells int32 :offset-assert 280) + (total-nb-of-orbs int32 :offset-assert 284) + (total-nb-of-buzzers int32 :offset-assert 288) + (card-info mc-slot-info :offset-assert 292) + (last-option-index-change int64 :offset-assert 296) + (video-mode-timeout uint64 :offset-assert 304) + (display-state-stack progress-screen 5 :offset-assert 312) + (option-index-stack int32 5 :offset-assert 352) + (display-state-pos int32 :offset-assert 372) + (nb-of-icons int32 :offset-assert 376) + (icons hud-icon 6 :offset-assert 380) + (max-nb-of-particles int32 :offset-assert 404) + (nb-of-particles int32 :offset-assert 408) + (particles hud-particle 40 :offset-assert 412) + (particle-state int32 40 :offset-assert 572) ) + :heap-base #x270 :method-count-assert 59 :size-assert #x2dc - :flag-assert #x3b000002dc + :flag-assert #x3b027002dc (:methods - (dummy-14 () none 14) - (dummy-15 () none 15) - (dummy-16 () none 16) - (dummy-17 () none 17) + (dummy-14 (_type_) none 14) + (dummy-15 (_type_) none 15) + (dummy-16 (_type_) none 16) + (draw-progress (_type_) none 17) (dummy-18 () none 18) - (dummy-19 () none 19) + (dummy-19 (_type_) symbol 19) (hidden? (_type_) symbol 20) - (dummy-21 () none 21) - (dummy-22 () none 22) - (TODO-RENAME-23 (_type_ symbol symbol) none 23) - (dummy-24 () none 24) - (dummy-25 () none 25) - (dummy-26 () none 26) - (dummy-27 () none 27) - (dummy-28 () none 28) - (dummy-29 () none 29) - (dummy-30 () none 30) - (dummy-31 () none 31) - (dummy-32 (_type_) none 32) - (dummy-33 () none 33) - (dummy-34 () none 34) - (dummy-35 () none 35) - (dummy-36 () none 36) - (dummy-37 () none 37) - (dummy-38 () none 38) - (dummy-39 () none 39) - (dummy-40 () none 40) - (dummy-41 () none 41) - (dummy-42 () none 42) - (dummy-43 () none 43) - (dummy-44 () none 44) - (dummy-45 () none 45) - (dummy-46 () none 46) - (dummy-47 () none 47) - (dummy-48 () none 48) - (dummy-49 () none 49) - (dummy-50 () none 50) - (dummy-51 () none 51) - (dummy-52 () none 52) - (dummy-53 () none 53) - (dummy-54 () none 54) - (dummy-55 () none 55) - (dummy-56 () none 56) - (dummy-57 () none 57) - (dummy-58 () none 58) + (adjust-sprites (_type_) none 21) + (adjust-icons (_type_) none 22) + (adjust-ratios (_type_ symbol symbol) none 23) + (draw-fuel-cell-screen (_type_ int) none 24) + (draw-money-screen (_type_ int) none 25) + (draw-buzzer-screen (_type_ int) none 26) + (draw-notice-screen (_type_) none 27) + (draw-options (_type_ int int float) none 28) + (dummy-29 (_type_) none 29) + (respond-progress (_type_) none 30) + (dummy-31 (_type_) none 31) + (dummy-32 (_type_) symbol 32) + (initialize-icons (_type_) none 33) + (initialize-particles (_type_) none 34) + (draw-memcard-storage-error (_type_ font-context) none 35) + (draw-memcard-data-exists (_type_ font-context) none 36) + (draw-memcard-no-data (_type_ font-context) none 37) + (draw-memcard-accessing (_type_ font-context) none 38) + (draw-memcard-insert (_type_ font-context) none 39) + (draw-memcard-file-select (_type_ font-context) none 40) + (draw-memcard-auto-save-error (_type_ font-context) none 41) + (draw-memcard-removed (_type_ font-context) none 42) + (draw-memcard-error (_type_ font-context) none 43) + (dummy-44 (_type_) none 44) + (push! (_type_) none 45) + (pop! (_type_) none 46) + (dummy-47 (_type_) none 47) + (enter! (_type_ progress-screen int) none 48) + (draw-memcard-format (_type_ font-context) none 49) + (draw-auto-save (_type_ font-context) none 50) + (set-transition-progress! (_type_ int) none 51) + (set-transition-speed! (_type_) none 52) + (dummy-53 (_type_ progress-screen) progress-screen 53) + (draw-pal-change-to-60hz (_type_ font-context) none 54) + (draw-pal-now-60hz (_type_ font-context) none 55) + (draw-no-disc (_type_ font-context) none 56) + (draw-bad-disc (_type_ font-context) none 57) + (draw-quit (_type_ font-context) none 58) ) ) diff --git a/test/decompiler/reference/engine/ui/progress/progress-draw_REF.gc b/test/decompiler/reference/engine/ui/progress/progress-draw_REF.gc new file mode 100644 index 0000000000..7cc89a3cc3 --- /dev/null +++ b/test/decompiler/reference/engine/ui/progress/progress-draw_REF.gc @@ -0,0 +1,2599 @@ +;;-*-Lisp-*- +(in-package goal) + +;; definition for function adjust-pos +(defun adjust-pos ((arg0 int) (arg1 int)) + (if (< arg0 arg1) + 0 + (- arg0 arg1) + ) + ) + +;; definition for method 24 of type progress +;; INFO: Return type mismatch int vs none. +;; Used lq/sq +(defmethod draw-fuel-cell-screen progress ((obj progress) (arg0 int)) + (local-vars + (sv-112 int) + (sv-128 int) + (sv-144 int) + (sv-160 (function trsqv float quaternion)) + (sv-176 trsqv) + (sv-192 int) + (sv-208 int) + (sv-224 (function string float font-context int none)) + ) + (hide-progress-icons) + (let ((s5-0 (-> *level-task-data* arg0))) + (if + (and + (= *cheat-mode* 'debug) + (logtest? (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons l3)) + ) + (format *stdcon* "fcd:~d~%" (-> *game-info* fuel-cell-deaths)) + ) + (set! (-> *progress-process* 0 particles 14 init-pos x) -320.0) + (set! (-> *progress-process* 0 particles 15 init-pos x) -320.0) + (set! (-> *progress-process* 0 icons 4 icon-x) -320) + (when (and (!= s5-0 #f) (= (-> *game-info* level-opened arg0) 1)) + (set! + sv-112 + (- (-> *task-egg-starting-x* (-> s5-0 nb-of-tasks)) (-> obj left-x-offset)) + ) + (set! sv-128 (the int (* 47.0 (-> obj transition-percentage-invert)))) + 0 + (let ((s0-0 6) + (s2-0 0) + (s4-1 (if (= (-> obj level-transition) 1) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (f30-0 (-> obj transition-percentage-invert)) + (s1-0 0) + (s3-0 #f) + ) + (when (-> obj stat-transition) + (set! sv-128 47) + (set! s2-0 (if (!= (-> obj display-state) (-> obj next-display-state)) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (set! s4-1 0) + (set! f30-0 1.0) + ) + (set! sv-144 0) + (while (< sv-144 4) + (let ((a0-18 (-> obj icons sv-144 icon 0 root))) + (set! sv-176 a0-18) + (set! sv-160 (method-of-object sv-176 set-yaw-angle-clear-roll-pitch!)) + (let + ((a1-2 + (+ + (y-angle a0-18) + (* 182.04445 (* 0.5 (-> *display* time-adjust-ratio))) + ) + ) + ) + (sv-160 sv-176 a1-2) + ) + ) + (set! sv-144 (+ sv-144 1)) + ) + (set! + sv-192 + (+ + sv-112 + (/ (- (* 47 (-> s5-0 nb-of-tasks)) (* sv-128 (-> s5-0 nb-of-tasks))) 2) + ) + ) + (set! sv-208 0) + (while (< sv-208 (-> s5-0 nb-of-tasks)) + (let ((v0-4 (get-task-status (-> s5-0 task-info sv-208 task-id))) + (v1-59 -1) + (a0-25 #f) + ) + (set! (-> obj particle-state s0-0) 2) + (cond + ((or (= v0-4 (task-status need-hint)) (= v0-4 (task-status unknown))) + (if (= *kernel-boot-message* 'play) + (set! (-> obj particle-state s0-0) 1) + ) + ) + ((= v0-4 (task-status invalid)) + (set! v1-59 (-> s5-0 task-info sv-208 text-index-when-resolved)) + (set! (-> obj particle-state s0-0) 3) + (set! a0-25 #t) + ) + ((= v0-4 (task-status need-introduction)) + (set! v1-59 0) + ) + ((= v0-4 (task-status need-reminder-a)) + (set! v1-59 0) + ) + ((= v0-4 (task-status need-reminder)) + (set! v1-59 1) + ) + ((= v0-4 (task-status need-reward-speech)) + (set! v1-59 2) + ) + ((= v0-4 (task-status need-resolution)) + (set! v1-59 2) + ) + ) + (if (and (!= *kernel-boot-message* 'play) (= v1-59 -1)) + (set! v1-59 0) + ) + (set! (-> obj particles s0-0 init-pos x) (the float (+ sv-192 s2-0))) + (set! (-> obj particles s0-0 init-pos y) (the float (+ s4-1 204))) + (+! s0-0 1) + (when (= sv-208 (-> obj task-index)) + (set! s1-0 v1-59) + (set! s3-0 a0-25) + (set! (-> obj particles 5 init-pos x) (the float (+ sv-192 s2-0))) + (set! (-> obj particles 5 init-pos y) (the float (+ s4-1 204))) + ) + ) + (set! sv-192 (+ sv-192 sv-128)) + (set! sv-208 (+ sv-208 1)) + ) + (dotimes (v1-77 (- 8 (-> s5-0 nb-of-tasks))) + (set! + (-> *progress-process* 0 particles s0-0 init-pos x) + (the float (+ s2-0 -320)) + ) + (set! (-> obj particles s0-0 init-pos y) (the float (+ s4-1 194))) + (+! s0-0 1) + ) + (when *common-text* + (when + (and + (!= s1-0 -1) + (> (-> s5-0 nb-of-tasks) 0) + (>= (-> obj task-index) 0) + (< (-> obj task-index) (-> s5-0 nb-of-tasks)) + ) + (let + ((s0-1 + (new + 'stack + 'font-context + *font-default-matrix* + (- (+ s2-0 32) (-> obj left-x-offset)) + (+ (/ s4-1 2) 125) + 8325000.0 + (font-color yellow-orange) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-91 s0-1)) + (set! (-> v1-91 width) (the float 328)) + ) + (let ((v1-92 s0-1)) + (set! (-> v1-92 height) (the float 50)) + ) + (let ((v1-93 s0-1)) + (set! (-> v1-93 scale) 0.7) + ) + (set! (-> s0-1 flags) (font-flags shadow kerning middle left large)) + (set! sv-224 print-game-text-scaled) + (let + ((a0-47 + (lookup-text! + *common-text* + (-> s5-0 task-info (-> obj task-index) task-name s1-0) + #f + ) + ) + (a1-57 f30-0) + (a2-15 s0-1) + (a3-2 (the int (* 128.0 f30-0))) + ) + (sv-224 a0-47 a1-57 a2-15 a3-2) + ) + (when s3-0 + (set! + (-> s0-1 origin x) + (the float (- (+ s2-0 32) (-> obj left-x-offset))) + ) + (set! (-> s0-1 origin y) (the float (+ (/ s4-1 2) 175))) + (let ((a0-49 s0-1)) + (set! (-> a0-49 color) (font-color lighter-lighter-blue)) + ) + (let ((v1-104 s0-1)) + (set! (-> v1-104 height) (the float 15)) + ) + (let ((v1-105 s0-1)) + (set! (-> v1-105 scale) 0.5) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id task-completed) #f) + f30-0 + s0-1 + (the int (* 128.0 f30-0)) + ) + ) + ) + ) + ) + ) + ) + ) + 0 + (none) + ) + +;; definition for method 25 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-money-screen progress ((obj progress) (arg0 int)) + (hide-progress-icons) + (let* ((v1-1 (/ (-> obj transition-offset) 16)) + (s4-0 (if (= (-> obj level-transition) 1) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (f30-0 (-> obj transition-percentage-invert)) + (s3-0 (- v1-1)) + ) + (when (-> obj stat-transition) + (set! v1-1 (if (!= (-> obj display-state) (-> obj next-display-state)) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (set! s3-0 v1-1) + (set! s4-0 0) + (set! f30-0 1.0) + ) + (set! + (-> obj particles 15 init-pos x) + (the float (- (+ v1-1 150) (-> obj left-x-offset))) + ) + (set! (-> obj particles 15 init-pos y) (the float (+ s4-0 214))) + (set! (-> obj icons 4 icon-x) (- (+ v1-1 148) (-> obj left-x-offset))) + (set! (-> obj icons 4 icon-y) (+ (-> obj big-orb-y-offset) s4-0)) + (let ((a0-15 (-> obj icons 4 icon 0 root))) + (set-yaw-angle-clear-roll-pitch! + a0-15 + (- (y-angle a0-15) (* 182.04445 (* 4.0 (-> *display* time-adjust-ratio)))) + ) + ) + (let + ((s4-1 + (new + 'stack + 'font-context + *font-default-matrix* + (- (+ s3-0 200) (-> obj left-x-offset)) + (+ (/ s4-0 2) 96) + 8325000.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-19 s4-1)) + (set! (-> v1-19 width) (the float 328)) + ) + (let ((v1-20 s4-1)) + (set! (-> v1-20 height) (the float 70)) + ) + (set! (-> s4-1 flags) (font-flags shadow kerning large)) + (let ((s3-1 print-game-text-scaled)) + (format + (clear *temp-string*) + "~D/~D" + (-> *game-info* money-per-level arg0) + (-> *game-counts* data arg0 money-count) + ) + (s3-1 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0))) + ) + (let ((v1-26 s4-1)) + (set! (-> v1-26 width) (the float 428)) + ) + (set! (-> s4-1 origin x) (+ -220.0 (-> s4-1 origin x))) + (set! (-> s4-1 origin y) (+ 40.0 (-> s4-1 origin y))) + (set! (-> s4-1 flags) (font-flags shadow kerning middle large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id total-collected) #f) + (* 0.7 f30-0) + s4-1 + (the int (* 128.0 f30-0)) + ) + (set! (-> s4-1 origin y) (+ 15.0 (-> s4-1 origin y))) + (let ((s5-2 print-game-text-scaled)) + (format + (clear *temp-string*) + "~D/~D" + (the int (-> *game-info* money-total)) + (-> obj total-nb-of-orbs) + ) + (s5-2 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0))) + ) + ) + ) + 0 + (none) + ) + +;; definition for method 26 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-buzzer-screen progress ((obj progress) (arg0 int)) + (hide-progress-icons) + (let* ((v1-2 (-> *level-task-data* arg0)) + (a0-3 (/ (-> obj transition-offset) 16)) + (s4-0 (if (= (-> obj level-transition) 1) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (f30-0 (-> obj transition-percentage-invert)) + (s3-0 (- a0-3)) + ) + (when (-> obj stat-transition) + (set! a0-3 (if (!= (-> obj display-state) (-> obj next-display-state)) + (- (-> obj transition-offset)) + (-> obj transition-offset) + ) + ) + (set! s3-0 a0-3) + (set! s4-0 0) + (set! f30-0 1.0) + ) + (set! + (-> obj particles 14 init-pos x) + (the float (- (+ a0-3 150) (-> obj left-x-offset))) + ) + (set! (-> obj particles 14 init-pos y) (the float (+ s4-0 214))) + (let ((s2-0 0)) + (let ((a1-8 (-> v1-2 buzzer-task-index))) + (if (!= a1-8 -1) + (set! s2-0 (buzzer-count *game-info* (-> v1-2 task-info a1-8 task-id))) + ) + ) + (let + ((s4-1 + (new + 'stack + 'font-context + *font-default-matrix* + (- (+ s3-0 200) (-> obj left-x-offset)) + (+ (/ s4-0 2) 96) + 8325000.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-9 s4-1)) + (set! (-> v1-9 width) (the float 328)) + ) + (let ((v1-10 s4-1)) + (set! (-> v1-10 height) (the float 70)) + ) + (set! (-> s4-1 flags) (font-flags shadow kerning large)) + (let ((s3-1 print-game-text-scaled)) + (format + (clear *temp-string*) + "~D/~D" + s2-0 + (-> *game-counts* data arg0 buzzer-count) + ) + (s3-1 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0))) + ) + (let ((v1-14 s4-1)) + (set! (-> v1-14 width) (the float 428)) + ) + (set! (-> s4-1 origin x) (+ -220.0 (-> s4-1 origin x))) + (set! (-> s4-1 origin y) (+ 40.0 (-> s4-1 origin y))) + (set! (-> s4-1 flags) (font-flags shadow kerning middle large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id total-collected) #f) + (* 0.7 f30-0) + s4-1 + (the int (* 128.0 f30-0)) + ) + (set! (-> s4-1 origin y) (+ 15.0 (-> s4-1 origin y))) + (let ((s5-2 print-game-text-scaled)) + (format + (clear *temp-string*) + "~D/~D" + (the int (-> *game-info* buzzer-total)) + (-> obj total-nb-of-buzzers) + ) + (s5-2 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0))) + ) + ) + ) + ) + 0 + (none) + ) + +;; definition for method 35 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod + draw-memcard-storage-error + progress + ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.55) + ) + (let ((v1-1 arg0)) + (set! (-> v1-1 width) (the float 265)) + ) + (let ((v1-2 arg0)) + (set! (-> v1-2 height) (the float 55)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (let ((s4-0 (game-text-id card-not-formatted-title))) + (case (-> obj display-state) + (((progress-screen memcard-no-space)) + (set! s4-0 (game-text-id memcard-no-space)) + ) + (((progress-screen memcard-not-inserted)) + (set! s4-0 (game-text-id memcard-not-inserted)) + ) + ) + (let ((s3-0 print-game-text-scaled)) + (format (clear *temp-string*) (lookup-text! *common-text* s4-0 #f) 1) + (s3-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 70.0) + (let ((v1-12 arg0)) + (set! (-> v1-12 width) (the float 350)) + ) + (let ((v1-13 arg0)) + (set! (-> v1-13 height) (the float 40)) + ) + (let ((s4-1 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id memcard-space-requirement1) #f) + (if (-> obj card-info) + (-> obj card-info mem-required) + 0 + ) + ) + (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (set! (-> arg0 origin y) 115.0) + (let ((v1-17 arg0)) + (set! (-> v1-17 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id memcard-space-requirement2) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-19 arg0)) + (set! (-> v1-19 scale) 0.65) + ) + (set! (-> arg0 origin y) 160.0) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 49 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-memcard-format progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin y) 35.0) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.55) + ) + (let ((v1-1 arg0)) + (set! (-> v1-1 width) (the float 265)) + ) + (let ((v1-2 arg0)) + (set! (-> v1-2 height) (the float 55)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (let ((s4-0 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id card-not-formatted-title) #f) + 1 + ) + (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 105.0) + (let ((v1-7 arg0)) + (set! (-> v1-7 width) (the float 360)) + ) + (let ((v1-8 arg0)) + (set! (-> v1-8 height) (the float 40)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id card-not-formatted-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 scale) 0.65) + ) + (set! (-> arg0 origin y) 138.0) + (let ((v1-11 arg0)) + (set! (-> v1-11 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id format?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 36 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-memcard-data-exists progress ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.65) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 55.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 365)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 75)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id save-data-already-exists) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin y) 140.0) + (let ((v1-7 arg0)) + (set! (-> v1-7 width) (the float 360)) + ) + (let ((v1-8 arg0)) + (set! (-> v1-8 height) (the float 40)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id overwrite?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 37 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-memcard-no-data progress ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.65) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 40.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 365)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 75)) + ) + (let ((s4-0 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id no-save-data) #f) + 1 + ) + (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (set! (-> arg0 origin y) 130.0) + (let ((v1-7 arg0)) + (set! (-> v1-7 width) (the float 360)) + ) + (let ((v1-8 arg0)) + (set! (-> v1-8 height) (the float 40)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id create-save-data?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 38 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-memcard-accessing progress ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 1.0) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 35.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 365)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 75)) + ) + (when + (or + (< (mod (-> *display* real-frame-counter) 300) 150) + (!= (-> obj transition-percentage-invert) 1.0) + ) + (let ((a1-1 (game-text-id loading-data))) + (case (-> obj display-state) + (((progress-screen memcard-saving)) + (set! a1-1 (game-text-id saving-data)) + ) + (((progress-screen memcard-formatting)) + (set! a1-1 (game-text-id formatting)) + ) + (((progress-screen memcard-creating)) + (set! a1-1 (game-text-id creating-save-data)) + ) + ) + (print-game-text-scaled + (lookup-text! *common-text* a1-1 #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + ) + ) + (let ((v1-18 arg0)) + (set! (-> v1-18 scale) 0.65) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 15 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 100.0) + (let ((v1-22 arg0)) + (set! (-> v1-22 width) (the float 370)) + ) + (let ((v1-23 arg0)) + (set! (-> v1-23 height) (the float 75)) + ) + (let ((s4-1 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id do-not-remove-mem-card) #f) + 1 + ) + (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + 0 + (none) + ) + +;; definition for method 39 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-memcard-insert progress ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.65) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 35.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 310)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 110)) + ) + (let ((s4-0 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id insert-memcard) #f) + 1 + ) + (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (let ((v1-7 arg0)) + (set! (-> v1-7 scale) 0.65) + ) + (set! (-> arg0 origin y) 130.0) + (let ((v1-8 arg0)) + (set! (-> v1-8 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id back?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 40 of type progress +;; INFO: Return type mismatch int vs none. +;; Used lq/sq +(defmethod draw-memcard-file-select progress ((obj progress) (arg0 font-context)) + (local-vars + (sv-16 (function _varargs_ object)) + (sv-32 (function _varargs_ object)) + (sv-48 (function _varargs_ object)) + (sv-64 (function _varargs_ object)) + (sv-80 (function _varargs_ object)) + (sv-96 (function _varargs_ object)) + (sv-112 (function _varargs_ object)) + (sv-128 (function _varargs_ object)) + (sv-144 (function _varargs_ object)) + ) + (let ((s4-0 (* (+ (-> obj transition-offset) -256) 2))) + (if (< s4-0 0) + (set! s4-0 0) + ) + (if (< 500 s4-0) + (set! s4-0 700) + ) + (set! + (-> obj particles 19 init-pos x) + (the float (- (- 202 (adjust-pos s4-0 150)) (-> obj left-x-offset))) + ) + (set! + (-> obj particles 20 init-pos x) + (the float (- (+ (adjust-pos s4-0 100) 202) (-> obj left-x-offset))) + ) + (set! + (-> obj particles 21 init-pos x) + (the float (- (- 202 (adjust-pos s4-0 50)) (-> obj left-x-offset))) + ) + (set! + (-> obj particles 22 init-pos x) + (the float (- (+ s4-0 202) (-> obj left-x-offset))) + ) + ) + (cond + ((= (-> *setting-control* current video-mode) 'pal) + (set! (-> obj particles 21 init-pos y) 256.0) + (set! (-> obj particles 22 init-pos y) 338.0) + ) + (else + (set! (-> obj particles 21 init-pos y) 255.0) + (set! (-> obj particles 22 init-pos y) 336.0) + ) + ) + (let ((f0-13 (* 2.0 (+ -0.5 (-> obj transition-percentage-invert))))) + 128 + (if (< f0-13 0.0) + (set! f0-13 0.0) + ) + (let ((s4-1 (the int (* 128.0 f0-13)))) + (let ((v1-29 arg0)) + (set! (-> v1-29 scale) 0.5) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 102 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 5.0) + (let ((v1-33 arg0)) + (set! (-> v1-33 width) (the float 200)) + ) + (let ((v1-34 arg0)) + (set! (-> v1-34 height) (the float 20)) + ) + (print-game-text + (lookup-text! + *common-text* + (the-as + game-text-id + (if (= (-> obj display-state) (progress-screen load-game)) + 321 + 320 + ) + ) + #f + ) + arg0 + #f + s4-1 + 22 + ) + (set! (-> arg0 origin y) 26.0) + (let ((v1-37 arg0)) + (set! (-> v1-37 height) (the float 20)) + ) + (let ((s3-3 (-> obj card-info)) + (s2-0 23) + ) + (dotimes (s1-0 4) + (set! (-> arg0 origin x) (the float (- 41 (-> obj left-x-offset)))) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (let ((a0-17 arg0)) + (set! (-> a0-17 color) (font-color default)) + ) + (let ((v1-42 arg0)) + (set! (-> v1-42 width) (the float 320)) + ) + (cond + ((and + s3-3 + (= (-> s3-3 formatted) 1) + (= (-> s3-3 inited) 1) + (= (-> s3-3 file s1-0 present) 1) + ) + (set! + (-> obj particles s2-0 init-pos x) + (the float (- 66 (-> obj left-x-offset))) + ) + (let ((v1-57 arg0)) + (set! (-> v1-57 scale) 0.6) + ) + (if + (and + (< (-> s3-3 file s1-0 level-index) (length *level-task-data-remap*)) + (> (-> s3-3 file s1-0 level-index) 0) + ) + (print-game-text + (lookup-text! + *common-text* + (-> + *level-task-data* + (-> *level-task-data-remap* (+ (-> s3-3 file s1-0 level-index) -1)) + level-name-id + ) + #f + ) + arg0 + #f + s4-1 + 22 + ) + (print-game-text "OLD SAVE GAME" arg0 #f s4-1 22) + ) + (let ((a0-28 arg0)) + (set! (-> a0-28 color) (font-color blue-white)) + ) + (cond + ((or + (>= + 600 + (- + (-> *display* real-frame-counter) + (-> obj last-option-index-change) + ) + ) + (or + (< + (mod + (- + (-> *display* real-frame-counter) + (-> obj last-option-index-change) + ) + 1200 + ) + 600 + ) + (!= (-> obj option-index) s1-0) + (-> obj in-transition) + ) + ) + (let ((v1-87 arg0)) + (set! (-> v1-87 scale) 0.5) + ) + (set! (-> arg0 origin y) (+ 16.0 (-> arg0 origin y))) + (set! (-> arg0 flags) (font-flags shadow kerning middle large)) + (set! (-> arg0 origin x) (the float (- -73 (-> obj left-x-offset)))) + (let ((v1-91 arg0)) + (set! (-> v1-91 width) (the float 350)) + ) + (let ((s0-2 print-game-text)) + (set! sv-16 format) + (let ((a0-40 (clear *temp-string*)) + (a1-13 "~D") + (a2-5 (the int (-> s3-3 file s1-0 fuel-cell-count))) + ) + (sv-16 a0-40 a1-13 a2-5) + ) + (s0-2 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin x) (the float (- 1 (-> obj left-x-offset)))) + (let ((s0-3 print-game-text)) + (set! sv-32 format) + (let ((a0-44 (clear *temp-string*)) + (a1-15 "~D") + (a2-7 (the int (-> s3-3 file s1-0 money-count))) + ) + (sv-32 a0-44 a1-15 a2-7) + ) + (s0-3 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin x) (the float (- 79 (-> obj left-x-offset)))) + (let ((s0-4 print-game-text)) + (set! sv-48 format) + (let ((a0-48 (clear *temp-string*)) + (a1-17 "~D") + (a2-9 (the int (-> s3-3 file s1-0 buzzer-count))) + ) + (sv-48 a0-48 a1-17 a2-9) + ) + (s0-4 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin y) (+ 1.0 (-> arg0 origin y))) + (let ((v1-108 arg0)) + (set! (-> v1-108 scale) 1.0) + ) + (set! (-> arg0 flags) (font-flags shadow kerning right large)) + (set! (-> arg0 origin x) (the float (- 352 (-> obj left-x-offset)))) + (let ((s0-5 print-game-text)) + (set! sv-64 format) + (let ((a0-52 (clear *temp-string*)) + (a1-19 "~D%") + (a2-11 (the int (-> s3-3 file s1-0 completion-percentage))) + ) + (sv-64 a0-52 a1-19 a2-11) + ) + (s0-5 *temp-string* arg0 #f s4-1 22) + ) + (let ((v1-116 arg0)) + (set! (-> v1-116 scale) 0.5) + ) + (set! (-> arg0 origin y) (+ 9.0 (-> arg0 origin y))) + (set! (-> arg0 flags) (font-flags shadow kerning large)) + (set! (-> arg0 origin x) (the float (- 85 (-> obj left-x-offset)))) + (let ((s0-6 print-game-text)) + (set! sv-80 format) + (let ((a0-56 (clear *temp-string*)) + (a1-21 "/~D") + (a2-17 + (if (< 100 (the int (-> s3-3 file s1-0 fuel-cell-count))) + (-> obj total-nb-of-power-cells) + 100 + ) + ) + ) + (sv-80 a0-56 a1-21 a2-17) + ) + (s0-6 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin x) (the float (- 150 (-> obj left-x-offset)))) + (let ((s0-7 print-game-text)) + (set! sv-96 format) + (let ((a0-60 (clear *temp-string*)) + (a1-23 "/~D") + (a2-19 (-> obj total-nb-of-orbs)) + ) + (sv-96 a0-60 a1-23 a2-19) + ) + (s0-7 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin x) (the float (- 238 (-> obj left-x-offset)))) + (let ((s0-8 print-game-text)) + (set! sv-112 format) + (let ((a0-64 (clear *temp-string*)) + (a1-25 "/~D") + (a2-21 (-> obj total-nb-of-buzzers)) + ) + (sv-112 a0-64 a1-25 a2-21) + ) + (s0-8 *temp-string* arg0 #f s4-1 22) + ) + (set! (-> arg0 origin y) (+ 15.0 (-> arg0 origin y))) + ) + (else + (set! (-> arg0 origin y) (+ 18.0 (-> arg0 origin y))) + (set! (-> arg0 origin x) (the float (- 28 (-> obj left-x-offset)))) + (let ((v1-131 arg0)) + (set! (-> v1-131 scale) 0.8) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle large)) + (let ((v1-133 arg0)) + (set! (-> v1-133 width) (the float 350)) + ) + (cond + ((= (scf-get-territory) 1) + (let ((s0-10 print-game-text)) + (set! sv-128 format) + (let ((a0-69 (clear *temp-string*)) + (a1-27 "~X/~X/20~2X ~2X:~2X") + (a2-23 (-> s3-3 file s1-0 day)) + (a3-10 (-> s3-3 file s1-0 month)) + (t0-10 (-> s3-3 file s1-0 year)) + (t1-0 (-> s3-3 file s1-0 hour)) + (t2-0 (-> s3-3 file s1-0 minute)) + ) + (sv-128 a0-69 a1-27 a2-23 a3-10 t0-10 t1-0 t2-0) + ) + (s0-10 *temp-string* arg0 #f s4-1 22) + ) + ) + (else + (let ((s0-11 print-game-text)) + (set! sv-144 format) + (let ((a0-72 (clear *temp-string*)) + (a1-29 "~X/~X/20~2X ~2X:~2X") + (a2-25 (-> s3-3 file s1-0 month)) + (a3-12 (-> s3-3 file s1-0 day)) + (t0-12 (-> s3-3 file s1-0 year)) + (t1-1 (-> s3-3 file s1-0 hour)) + (t2-1 (-> s3-3 file s1-0 minute)) + ) + (sv-144 a0-72 a1-29 a2-25 a3-12 t0-12 t1-1 t2-1) + ) + (s0-11 *temp-string* arg0 #f s4-1 22) + ) + ) + ) + (set! (-> obj particles s2-0 init-pos x) -320.0) + (set! (-> arg0 origin y) (+ 23.0 (-> arg0 origin y))) + ) + ) + ) + (else + (set! (-> obj particles s2-0 init-pos x) -320.0) + (set! (-> arg0 origin y) (+ 12.0 (-> arg0 origin y))) + (let ((v1-173 arg0)) + (set! (-> v1-173 scale) 0.7) + ) + (print-game-text + (lookup-text! *common-text* (game-text-id empty) #f) + arg0 + #f + s4-1 + 22 + ) + (set! (-> arg0 origin y) (+ 29.0 (-> arg0 origin y))) + ) + ) + (+! s2-0 1) + ) + ) + ) + ) + 0 + (none) + ) + +;; definition for method 41 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod + draw-memcard-auto-save-error + progress + ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.6) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 70 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 5.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 265)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 35)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id error-saving) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 34.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 360)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 50)) + ) + (let ((s4-1 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id check-memcard) #f) + 1 + ) + (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (set! (-> arg0 origin y) 89.0) + (let ((v1-12 arg0)) + (set! (-> v1-12 width) (the float 360)) + ) + (let ((v1-13 arg0)) + (set! (-> v1-13 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-disabled-title) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin y) 118.0) + (let ((v1-15 arg0)) + (set! (-> v1-15 width) (the float 360)) + ) + (let ((v1-16 arg0)) + (set! (-> v1-16 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-disabled-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-18 arg0)) + (set! (-> v1-18 scale) 0.65) + ) + (set! (-> arg0 origin y) 160.0) + (let ((v1-19 arg0)) + (set! (-> v1-19 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 42 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-memcard-removed progress ((obj progress) (arg0 font-context)) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.6) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (set! (-> arg0 origin x) (the float (- 70 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 10.0) + (let ((v1-4 arg0)) + (set! (-> v1-4 width) (the float 265)) + ) + (let ((v1-5 arg0)) + (set! (-> v1-5 height) (the float 55)) + ) + (let ((s4-0 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id memcard-removed) #f) + 1 + ) + (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 78.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 360)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-disabled-title) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin y) 112.0) + (let ((v1-12 arg0)) + (set! (-> v1-12 width) (the float 360)) + ) + (let ((v1-13 arg0)) + (set! (-> v1-13 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-disabled-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-15 arg0)) + (set! (-> v1-15 scale) 0.65) + ) + (set! (-> arg0 origin y) 160.0) + (let ((v1-16 arg0)) + (set! (-> v1-16 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 43 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-memcard-error progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin y) 15.0) + (let ((v1-0 arg0)) + (set! (-> v1-0 scale) 0.7) + ) + (let ((v1-1 arg0)) + (set! (-> v1-1 width) (the float 265)) + ) + (let ((v1-2 arg0)) + (set! (-> v1-2 height) (the float 55)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (let ((s4-0 (game-text-id error-loading))) + (case (-> obj display-state) + (((progress-screen memcard-error-saving)) + (set! s4-0 (game-text-id error-saving)) + ) + (((progress-screen memcard-error-formatting)) + (set! s4-0 (game-text-id error-formatting)) + ) + (((progress-screen memcard-error-creating)) + (set! s4-0 (game-text-id error-creating-data)) + ) + ) + (let ((s3-0 print-game-text-scaled)) + (format (clear *temp-string*) (lookup-text! *common-text* s4-0 #f) 1) + (s3-0 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 80.0) + (let ((v1-13 arg0)) + (set! (-> v1-13 width) (the float 360)) + ) + (let ((v1-14 arg0)) + (set! (-> v1-14 height) (the float 70)) + ) + (let ((s4-1 print-game-text-scaled)) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id check-memcard-and-retry) #f) + 1 + ) + (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128) + ) + (let ((v1-16 arg0)) + (set! (-> v1-16 scale) 0.65) + ) + (set! (-> arg0 origin y) 155.0) + (let ((v1-17 arg0)) + (set! (-> v1-17 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 50 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-auto-save progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 35 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 18.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 330)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 60)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-warn-title) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin x) (the float (- 15 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 110.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 370)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id autosave-warn-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-12 arg0)) + (set! (-> v1-12 scale) 0.65) + ) + (set! (-> arg0 origin y) 175.0) + (let ((v1-13 arg0)) + (set! (-> v1-13 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! + (-> *progress-process* 0 particles 31 init-pos y) + (the float (if (= (get-aspect-ratio) 'aspect16x9) + 170 + 180 + ) + ) + ) + (set! + (-> *progress-process* 0 particles 31 init-pos x) + (the + float + (- + (if + (or + (< (mod (-> *display* real-frame-counter) 300) 270) + (!= (-> obj transition-percentage-invert) 1.0) + ) + 205 + -320 + ) + (-> obj left-x-offset) + ) + ) + ) + 0 + (none) + ) + +;; definition for method 54 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-pal-change-to-60hz progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 20.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 300)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 40)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id screen-change-to-60hz) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin x) (the float (- 15 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 60.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 370)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id screen-60hz-warn-support) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin y) 120.0) + (let ((v1-12 arg0)) + (set! (-> v1-12 height) (the float 50)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id screen-60hz-warn-timer) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-14 arg0)) + (set! (-> v1-14 scale) 0.65) + ) + (set! (-> arg0 origin y) 175.0) + (let ((v1-15 arg0)) + (set! (-> v1-15 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 56 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-no-disc progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 50.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 300)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 40)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id no-disc-title) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 90.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 360)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id no-disc-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (when (is-cd-in?) + (let ((v1-13 arg0)) + (set! (-> v1-13 scale) 0.65) + ) + (set! (-> arg0 origin y) 155.0) + (let ((v1-14 arg0)) + (set! (-> v1-14 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + ) + 0 + (none) + ) + +;; definition for method 57 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-bad-disc progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 50.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 300)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 40)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id bad-disc-title) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 90.0) + (let ((v1-9 arg0)) + (set! (-> v1-9 width) (the float 360)) + ) + (let ((v1-10 arg0)) + (set! (-> v1-10 height) (the float 60)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id bad-disc-msg) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (let ((v1-12 arg0)) + (set! (-> v1-12 scale) 0.65) + ) + (set! (-> arg0 origin y) 155.0) + (let ((v1-13 arg0)) + (set! (-> v1-13 height) (the float 20)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id continue?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 58 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-quit progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 70.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 300)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 40)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id quit?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 55 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-pal-now-60hz progress ((obj progress) (arg0 font-context)) + (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset)))) + (set! (-> arg0 origin y) 45.0) + (let ((v1-2 arg0)) + (set! (-> v1-2 scale) 0.6) + ) + (let ((v1-3 arg0)) + (set! (-> v1-3 width) (the float 300)) + ) + (let ((v1-4 arg0)) + (set! (-> v1-4 height) (the float 50)) + ) + (set! (-> arg0 flags) (font-flags shadow kerning middle left large)) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id screen-now-60hz) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + (set! (-> arg0 origin y) 95.0) + (let ((v1-7 arg0)) + (set! (-> v1-7 height) (the float 50)) + ) + (print-game-text-scaled + (lookup-text! *common-text* (game-text-id screen-60hz-keep?) #f) + (-> obj transition-percentage-invert) + arg0 + 128 + ) + 0 + (none) + ) + +;; definition for method 27 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-notice-screen progress ((obj progress)) + (hide-progress-icons) + (when *common-text* + (let + ((a1-1 + (new + 'stack + 'font-context + *font-default-matrix* + (- 70 (-> obj left-x-offset)) + 10 + 0.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (case (-> obj display-state) + (((progress-screen memcard-format)) + (draw-memcard-format obj a1-1) + ) + (((progress-screen memcard-no-space) + (progress-screen memcard-not-inserted) + (progress-screen memcard-not-formatted) + ) + (draw-memcard-storage-error obj a1-1) + ) + (((progress-screen memcard-data-exists)) + (draw-memcard-data-exists obj a1-1) + ) + (((progress-screen memcard-no-data)) + (draw-memcard-no-data obj a1-1) + ) + (((progress-screen memcard-loading) + (progress-screen memcard-saving) + (progress-screen memcard-formatting) + (progress-screen memcard-creating) + ) + (draw-memcard-accessing obj a1-1) + ) + (((progress-screen memcard-insert)) + (draw-memcard-insert obj a1-1) + ) + (((progress-screen load-game) + (progress-screen save-game) + (progress-screen save-game-title) + ) + (draw-memcard-file-select obj a1-1) + ) + (((progress-screen memcard-auto-save-error)) + (draw-memcard-auto-save-error obj a1-1) + ) + (((progress-screen memcard-removed)) + (draw-memcard-removed obj a1-1) + ) + (((progress-screen memcard-error-loading) + (progress-screen memcard-error-saving) + (progress-screen memcard-error-formatting) + (progress-screen memcard-error-creating) + ) + (draw-memcard-error obj a1-1) + ) + (((progress-screen auto-save)) + (draw-auto-save obj a1-1) + ) + (((progress-screen pal-change-to-60hz)) + (draw-pal-change-to-60hz obj a1-1) + ) + (((progress-screen pal-now-60hz)) + (draw-pal-now-60hz obj a1-1) + ) + (((progress-screen no-disc)) + (draw-no-disc obj a1-1) + ) + (((progress-screen bad-disc)) + (draw-bad-disc obj a1-1) + ) + (((progress-screen quit)) + (draw-quit obj a1-1) + ) + ) + ) + ) + 0 + (none) + ) + +;; definition for function draw-percent-bar +;; INFO: Return type mismatch int vs none. +(defun draw-percent-bar ((arg0 int) (arg1 int) (arg2 float) (arg3 int)) + (let* ((s2-0 (-> *display* frames (-> *display* on-screen) frame global-buf)) + (gp-0 (-> s2-0 base)) + ) + (draw-sprite2d-xy s2-0 arg0 arg1 255 14 (new 'static 'rgba :a #x60)) + (draw-sprite2d-xy + s2-0 + arg0 + (+ arg1 2) + (the int (* 255.0 arg2)) + 10 + (the-as rgba arg3) + ) + (let ((a3-3 (-> s2-0 base))) + (let ((v1-3 (the-as dma-packet (-> s2-0 base)))) + (set! (-> v1-3 dma) (new 'static 'dma-tag :id (dma-tag-id next))) + (set! (-> v1-3 vif0) (new 'static 'vif-tag)) + (set! (-> v1-3 vif1) (new 'static 'vif-tag)) + (set! (-> s2-0 base) (&+ (the-as pointer v1-3) 16)) + ) + (dma-bucket-insert-tag + (-> *display* frames (-> *display* on-screen) frame bucket-group) + (bucket-id sprite) + gp-0 + (the-as (pointer dma-tag) a3-3) + ) + ) + ) + 0 + (none) + ) + +;; definition for function print-language-name +(defun + print-language-name + ((arg0 int) (arg1 font-context) (arg2 int) (arg3 symbol)) + (let ((s5-0 (if arg3 + arg2 + (- arg2) + ) + ) + ) + (+! (-> arg1 origin x) (the float s5-0)) + (let ((f30-0 (- 1.0 (* 0.0033333334 (the float arg2))))) + (print-game-text-scaled + (lookup-text! *common-text* (-> *language-name-remap* arg0) #f) + f30-0 + arg1 + (the int (* 128.0 f30-0)) + ) + ) + (set! (-> arg1 origin x) (- (-> arg1 origin x) (the float s5-0))) + ) + (set! (-> arg1 color) (font-color default)) + arg1 + ) + +;; definition for method 28 of type progress +;; INFO: Return type mismatch int vs none. +;; Used lq/sq +(defmethod + draw-options + progress + ((obj progress) (arg0 int) (arg1 int) (arg2 float)) + (local-vars + (sv-112 font-context) + (sv-128 int) + (sv-144 int) + (sv-160 (function _varargs_ object)) + (sv-176 string) + (sv-192 string) + (sv-208 string) + (sv-224 (function _varargs_ object)) + (sv-240 string) + (sv-256 string) + (sv-272 string) + (sv-288 (function string font-context symbol int int float)) + (sv-304 (function _varargs_ object)) + (sv-320 (function _varargs_ object)) + (sv-336 string) + (sv-352 string) + (sv-368 string) + (sv-384 (function _varargs_ object)) + (sv-400 string) + (sv-416 string) + (sv-432 string) + (sv-448 uint) + (sv-464 int) + (sv-480 int) + (sv-496 int) + (sv-512 uint) + (sv-528 (function _varargs_ object)) + (sv-544 string) + (sv-560 string) + (sv-576 string) + (sv-592 (function _varargs_ object)) + (sv-608 string) + (sv-624 string) + (sv-640 string) + (sv-656 (function _varargs_ object)) + (sv-672 string) + (sv-688 string) + (sv-704 string) + (sv-720 (function _varargs_ object)) + (sv-736 string) + (sv-752 string) + (sv-768 string) + (sv-784 (function _varargs_ object)) + (sv-800 string) + (sv-816 string) + (sv-832 string) + (sv-848 (function _varargs_ object)) + (sv-864 string) + (sv-880 string) + (sv-896 string) + (sv-912 string) + ) + (let ((s3-0 (-> *options-remap* (-> obj display-state)))) + (when s3-0 + (let ((s2-1 (- arg0 (/ (* arg1 (length s3-0)) 2))) + (s1-0 0) + ) + 27 + 0 + (set! + sv-112 + (new + 'stack + 'font-context + *font-default-matrix* + 0 + 0 + 0.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + (let ((v1-11 sv-112)) + (set! (-> v1-11 width) (the float 350)) + ) + (let ((v1-12 sv-112)) + (set! (-> v1-12 height) (the float 25)) + ) + (set! (-> sv-112 flags) (font-flags shadow kerning middle left large)) + (dotimes (s0-0 (length s3-0)) + (set! sv-912 (the-as string #f)) + (set! sv-128 27) + (set! sv-144 s2-1) + (let ((v1-18 (-> s3-0 s0-0 option-type))) + (cond + ((= v1-18 7) + (cond + ((-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) + (set! sv-160 format) + (set! sv-176 (clear *temp-string*)) + (set! sv-192 "~30L~S~0L ~S") + (set! sv-208 (lookup-text! *common-text* (game-text-id yes) #f)) + (let ((a3-2 (lookup-text! *common-text* (game-text-id no) #f))) + (sv-160 sv-176 sv-192 sv-208 a3-2) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + (else + (set! sv-224 format) + (set! sv-240 (clear *temp-string*)) + (set! sv-256 "~0L~S ~30L~S~1L") + (set! sv-272 (lookup-text! *common-text* (game-text-id yes) #f)) + (let ((a3-3 (lookup-text! *common-text* (game-text-id no) #f))) + (sv-224 sv-240 sv-256 sv-272 a3-3) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ) + ) + ((or (= v1-18 6) (= v1-18 8)) + (cond + ((nonzero? (-> s3-0 s0-0 name)) + (set! sv-912 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f)) + sv-912 + ) + (else + (set! sv-912 (the-as string #f)) + (the-as symbol sv-912) + ) + ) + ) + ((and (-> obj selected-option) (= (-> obj option-index) s0-0)) + (let ((a0-19 sv-112)) + (set! (-> a0-19 color) (font-color default)) + ) + (set! + (-> sv-112 origin x) + (the float (- sv-128 (-> obj left-x-offset))) + ) + (case (-> s3-0 s0-0 option-type) + ((3) + (set! (-> sv-112 origin y) (the float (+ s2-1 -20))) + ) + (else + (set! (-> sv-112 origin y) (the float (+ s2-1 -8))) + ) + ) + (let ((v1-64 sv-112)) + (set! (-> v1-64 scale) 0.6) + ) + (set! sv-288 print-game-text) + (let ((a0-23 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f)) + (a1-11 sv-112) + (a2-10 #f) + (a3-4 128) + (t0-1 22) + ) + (sv-288 a0-23 a1-11 a2-10 a3-4 t0-1) + ) + (case (-> s3-0 s0-0 option-type) + ((3) + (set! sv-144 (+ s2-1 3)) + sv-144 + ) + (else + (set! sv-144 (+ s2-1 7)) + sv-144 + ) + ) + (let ((v1-81 (-> s3-0 s0-0 option-type))) + (cond + ((zero? v1-81) + (let* ((v1-82 (the-as uint #x8000ffff)) + (f0-12 + (* + 0.01 + (-> + (the-as (pointer float) (-> s3-0 s0-0 value-to-modify)) + ) + ) + ) + (a0-34 + (logior + (logand v1-82 -256) + (shr (shl (the int (+ 64.0 (* 191.0 f0-12))) 56) 56) + ) + ) + (a3-5 + (logior + (logand a0-34 -65281) + (shr (shl (shr (shl a0-34 56) 56) 56) 48) + ) + ) + ) + (draw-percent-bar + (- 75 (-> obj left-x-offset)) + (+ s2-1 8) + f0-12 + (the-as int a3-5) + ) + ) + (set! sv-304 format) + (let ((a0-42 (clear *temp-string*)) + (a1-13 "~D") + (a2-12 + (the + int + (-> (the-as (pointer float) (-> s3-0 s0-0 value-to-modify))) + ) + ) + ) + (sv-304 a0-42 a1-13 a2-12) + ) + (set! sv-912 *temp-string*) + (set! + sv-128 + (+ + (the + int + (* + 2.5 + (-> (the-as (pointer float) (-> s3-0 s0-0 value-to-modify))) + ) + ) + -100 + ) + ) + sv-128 + ) + ((= v1-81 2) + (cond + ((-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) + (set! sv-320 format) + (set! sv-336 (clear *temp-string*)) + (set! sv-352 "~30L~S~0L ~S") + (set! sv-368 (lookup-text! *common-text* (game-text-id on) #f)) + (let ((a3-6 (lookup-text! *common-text* (game-text-id off) #f))) + (sv-320 sv-336 sv-352 sv-368 a3-6) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + (else + (set! sv-384 format) + (set! sv-400 (clear *temp-string*)) + (set! sv-416 "~0L~S ~30L~S~1L") + (set! sv-432 (lookup-text! *common-text* (game-text-id on) #f)) + (let ((a3-7 (lookup-text! *common-text* (game-text-id off) #f))) + (sv-384 sv-400 sv-416 sv-432 a3-7) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ) + ) + ((= v1-81 1) + (set! sv-512 (-> obj language-selection)) + (set! + sv-448 + (-> (the-as (pointer uint64) (-> s3-0 s0-0 value-to-modify))) + ) + (if + (and + (zero? (scf-get-territory)) + (not + (and + (= *progress-cheat* 'language) + (logtest? + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons l2) + ) + (logtest? + (-> *cpad-list* cpads 0 button0-abs 0) + (pad-buttons r2) + ) + ) + ) + ) + (set! sv-464 5) + (set! sv-464 6) + ) + (if (-> obj language-transition) + (set! + (-> obj language-x-offset) + (seekl + (-> obj language-x-offset) + 200 + (the int (* 10.0 (-> *display* time-adjust-ratio))) + ) + ) + ) + (when (>= (-> obj language-x-offset) 100) + (set! (-> obj language-selection) sv-448) + (set! sv-512 sv-448) + (set! (-> obj language-transition) #f) + (set! (-> obj language-x-offset) 0) + 0 + ) + (set! (-> sv-112 origin y) (the float (+ s2-1 3))) + (let ((a0-62 sv-112)) + (set! (-> a0-62 color) (font-color lighter-lighter-blue)) + ) + 0 + (set! sv-480 (mod (the-as int (+ sv-512 1)) sv-464)) + (let ((a0-66 (mod (+ sv-464 -1 sv-512) sv-464)) + (v1-153 (mod (the-as int (+ sv-512 2)) sv-464)) + ) + (set! sv-496 (mod (+ sv-464 -2 sv-512) sv-464)) + (cond + ((-> obj language-direction) + (let ((a2-22 (- 200 (+ (-> obj language-x-offset) 100)))) + (print-language-name a0-66 sv-112 a2-22 #f) + ) + (let ((a2-23 (+ (-> obj language-x-offset) 100))) + (cond + ((< a2-23 150) + (let ((t9-27 print-language-name) + (a1-30 sv-112) + (a3-9 #t) + ) + (t9-27 sv-480 a1-30 a2-23 a3-9) + ) + ) + (else + (let ((a2-24 (- 200 (-> obj language-x-offset))) + (t9-28 print-language-name) + (a1-31 sv-112) + (a3-10 #f) + ) + (t9-28 sv-496 a1-31 a2-24 a3-10) + ) + ) + ) + ) + ) + (else + (let ((a2-25 (+ (-> obj language-x-offset) 100))) + (cond + ((< a2-25 150) + (print-language-name a0-66 sv-112 a2-25 #f) + ) + (else + (let ((a2-26 (- 200 (-> obj language-x-offset)))) + (print-language-name v1-153 sv-112 a2-26 #t) + ) + ) + ) + ) + (let ((a2-27 (- 200 (+ (-> obj language-x-offset) 100)))) + (print-language-name sv-480 sv-112 a2-27 #t) + ) + ) + ) + ) + (when (not (-> obj language-transition)) + (let ((a0-75 sv-112)) + (set! (-> a0-75 color) (font-color yellow-green-2)) + ) + ) + (let ((t9-32 print-language-name) + (a1-37 sv-112) + (a2-28 (-> obj language-x-offset)) + (a3-14 (-> obj language-direction)) + ) + (t9-32 (the-as int sv-512) a1-37 a2-28 (the-as symbol a3-14)) + ) + ) + ((= v1-81 3) + (set! + sv-912 + (lookup-text! *common-text* (game-text-id move-dpad) #f) + ) + sv-912 + ) + ((= v1-81 4) + (cond + ((= + (-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) + 'aspect4x3 + ) + (set! sv-528 format) + (set! sv-544 (clear *temp-string*)) + (set! sv-560 "~30L~S~0L ~S") + (set! sv-576 (lookup-text! *common-text* (game-text-id 4x3) #f)) + (let ((a3-15 (lookup-text! *common-text* (game-text-id 16x9) #f))) + (sv-528 sv-544 sv-560 sv-576 a3-15) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + (else + (set! sv-592 format) + (set! sv-608 (clear *temp-string*)) + (set! sv-624 "~0L~S ~30L~S~1L") + (set! sv-640 (lookup-text! *common-text* (game-text-id 4x3) #f)) + (let ((a3-16 (lookup-text! *common-text* (game-text-id 16x9) #f))) + (sv-592 sv-608 sv-624 sv-640 a3-16) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ) + ) + ((= v1-81 5) + (cond + ((= + (-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) + 'ntsc + ) + (set! sv-656 format) + (set! sv-672 (clear *temp-string*)) + (set! sv-688 "~0L~S ~30L~S~1L") + (set! sv-704 (lookup-text! *common-text* (game-text-id 50hz) #f)) + (let ((a3-17 (lookup-text! *common-text* (game-text-id 60hz) #f))) + (sv-656 sv-672 sv-688 sv-704 a3-17) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + (else + (set! sv-720 format) + (set! sv-736 (clear *temp-string*)) + (set! sv-752 "~30L~S~0L ~S") + (set! sv-768 (lookup-text! *common-text* (game-text-id 50hz) #f)) + (let ((a3-18 (lookup-text! *common-text* (game-text-id 60hz) #f))) + (sv-720 sv-736 sv-752 sv-768 a3-18) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ) + ) + ) + ) + ) + (else + (let ((v1-195 (-> s3-0 s0-0 option-type))) + (cond + ((or (zero? v1-195) (= v1-195 3) (= v1-195 4) (= v1-195 5)) + (set! sv-912 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f)) + sv-912 + ) + ((= v1-195 2) + (set! sv-784 format) + (set! sv-800 (clear *temp-string*)) + (set! sv-816 "~S: ~S") + (set! sv-832 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f)) + (let + ((a3-19 + (if (-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) + (lookup-text! *common-text* (game-text-id on) #f) + (lookup-text! *common-text* (game-text-id off) #f) + ) + ) + ) + (sv-784 sv-800 sv-816 sv-832 a3-19) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ((= v1-195 1) + (set! sv-848 format) + (set! sv-864 (clear *temp-string*)) + (set! sv-880 "~S: ~S") + (set! sv-896 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f)) + (let + ((a3-20 + (lookup-text! + *common-text* + (-> + *language-name-remap* + (-> (the-as (pointer uint64) (-> s3-0 s0-0 value-to-modify))) + ) + #f + ) + ) + ) + (sv-848 sv-864 sv-880 sv-896 a3-20) + ) + (set! sv-912 *temp-string*) + sv-912 + ) + ) + ) + ) + ) + ) + (when sv-912 + (let ((f0-23 (-> obj transition-percentage-invert))) + (let ((v1-235 sv-112)) + (set! + (-> v1-235 color) + (the-as + font-color + (if (and (= s0-0 (-> obj option-index)) (not (-> obj in-transition))) + 30 + 0 + ) + ) + ) + ) + (set! + (-> sv-112 origin x) + (the float (- sv-128 (-> obj left-x-offset))) + ) + (set! + (-> sv-112 origin y) + (the float (the int (* (the float sv-144) (if (-> s3-0 s0-0 scale) + f0-23 + 1.0 + ) + ) + ) + ) + ) + (let ((v1-246 sv-112)) + (set! (-> v1-246 scale) (* arg2 f0-23)) + ) + (let ((t9-60 print-game-text) + (a1-64 sv-112) + (a2-50 #f) + (a3-21 (the int (* 128.0 f0-23))) + (t0-2 22) + ) + (t9-60 sv-912 a1-64 a2-50 a3-21 t0-2) + ) + ) + ) + (+! s2-1 arg1) + (+! s1-0 1) + ) + ) + ) + ) + 0 + (none) + ) + +;; definition for method 17 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod draw-progress progress ((obj progress)) + (let + ((f30-0 + (+ + -409.0 + (-> obj particles 2 init-pos x) + (* 0.8 (the float (-> obj left-x-offset))) + ) + ) + (s5-0 (if (or (-> obj stat-transition) (nonzero? (-> obj level-transition))) + 0 + (-> obj transition-offset) + ) + ) + ) + (let + ((f28-0 + (if (or (-> obj stat-transition) (nonzero? (-> obj level-transition))) + 1.0 + (-> obj transition-percentage-invert) + ) + ) + ) + (let* + ((s3-0 (-> *display* frames (-> *display* on-screen) frame global-buf)) + (s4-0 (-> s3-0 base)) + ) + (let ((s2-0 draw-string-xy)) + (format + (clear *temp-string*) + "~D" + (the int (+ 0.5 (-> *target* game money))) + ) + (s2-0 + *temp-string* + s3-0 + (the int (+ 428.0 (the float s5-0) f30-0)) + (- 12 (the int (* 0.16666667 f30-0))) + (font-color default) + (font-flags shadow kerning large) + ) + ) + (let ((s2-1 draw-string-xy)) + (format + (clear *temp-string*) + "~D" + (the int (+ 0.5 (-> *target* game fuel))) + ) + (s2-1 + *temp-string* + s3-0 + (the int (+ 456.0 (the float (adjust-pos s5-0 50)) f30-0)) + (- 48 (the int (* 0.125 f30-0))) + (font-color default) + (font-flags shadow kerning large) + ) + ) + (let ((s2-2 draw-string-xy)) + (format + (clear *temp-string*) + "~D" + (the int (+ 0.5 (-> *target* fact-info-target buzzer))) + ) + (s2-2 + *temp-string* + s3-0 + (the int (+ 469.0 (the float (adjust-pos s5-0 100)) f30-0)) + 89 + (font-color default) + (font-flags shadow kerning large) + ) + ) + (let ((a3-4 (-> s3-0 base))) + (let ((v1-20 (the-as object (-> s3-0 base)))) + (set! + (-> (the-as dma-packet v1-20) dma) + (new 'static 'dma-tag :id (dma-tag-id next)) + ) + (set! (-> (the-as dma-packet v1-20) vif0) (new 'static 'vif-tag)) + (set! (-> (the-as dma-packet v1-20) vif1) (new 'static 'vif-tag)) + (set! (-> s3-0 base) (&+ (the-as pointer v1-20) 16)) + ) + (dma-bucket-insert-tag + (-> *display* frames (-> *display* on-screen) frame bucket-group) + (bucket-id debug-draw0) + s4-0 + (the-as (pointer dma-tag) a3-4) + ) + ) + ) + (let + ((s4-2 + (new + 'stack + 'font-context + *font-default-matrix* + (the + int + (+ + (- 423.0 (the float (/ (-> obj left-x-offset) 2))) + f30-0 + (the float (adjust-pos s5-0 150)) + ) + ) + 131 + 0.0 + (font-color default) + (font-flags shadow kerning) + ) + ) + ) + (let ((v1-29 s4-2)) + (set! (-> v1-29 width) (the float 100)) + ) + (let ((v1-30 s4-2)) + (set! (-> v1-30 height) (the float 15)) + ) + (let ((v1-31 s4-2)) + (set! (-> v1-31 scale) 0.5) + ) + (set! (-> s4-2 flags) (font-flags shadow kerning large)) + (print-game-text + (lookup-text! *common-text* (game-text-id options) #f) + s4-2 + #f + 128 + 22 + ) + (let ((v1-34 s4-2)) + (set! (-> v1-34 width) (the float 160)) + ) + (let ((v1-35 s4-2)) + (set! (-> v1-35 height) (the float 22)) + ) + (let ((v1-36 s4-2)) + (set! (-> v1-36 scale) 1.3) + ) + (let ((a0-31 s4-2)) + (set! (-> a0-31 color) (font-color another-light-blue)) + ) + (set! + (-> s4-2 origin x) + (+ + (- + 435.0 + (the float (if (< (-> *progress-process* 0 completion-percentage) 10.0) + 93 + 80 + ) + ) + ) + f30-0 + ) + ) + (set! (-> s4-2 origin y) 180.0) + (set! (-> s4-2 flags) (font-flags shadow kerning middle left large)) + (let ((s3-3 print-game-text)) + (format + (clear *temp-string*) + "~2D%" + (the int (-> *progress-process* 0 completion-percentage)) + ) + (s3-3 *temp-string* s4-2 #f (the int (* 128.0 f28-0)) 22) + ) + ) + ) + 0.0 + (let ((f28-1 (+ -94.0 (-> obj particles 2 init-pos x))) + (s3-4 90) + (s4-3 224) + (s2-5 (/ s5-0 5)) + (f26-3 (-> obj button-scale)) + ) + (let ((f24-0 (* 182.04445 (- (/ -36.0 f26-3) (the float s2-5))))) + (set! + (-> obj particles 27 init-pos x) + (the float (+ s3-4 (the int (* f28-1 (cos f24-0))))) + ) + (set! + (-> obj particles 27 init-pos y) + (the float (+ s4-3 (the int (* f28-1 (sin f24-0))))) + ) + ) + (let + ((f24-2 (* 182.04445 (- (/ -21.0 f26-3) (the float (adjust-pos s2-5 10))))) + ) + (set! + (-> obj particles 28 init-pos x) + (the float (+ s3-4 (the int (* f28-1 (cos f24-2))))) + ) + (set! + (-> obj particles 28 init-pos y) + (the float (+ s4-3 (the int (* f28-1 (sin f24-2))))) + ) + ) + (let + ((f24-4 (* 182.04445 (- (/ -6.0 f26-3) (the float (adjust-pos s2-5 15)))))) + (set! + (-> obj particles 29 init-pos x) + (the float (+ s3-4 (the int (* f28-1 (cos f24-4))))) + ) + (set! + (-> obj particles 29 init-pos y) + (the float (+ s4-3 (the int (* f28-1 (sin f24-4))))) + ) + ) + (let + ((f26-5 (* 182.04445 (- (/ 9.0 f26-3) (the float (adjust-pos s2-5 20)))))) + (set! + (-> obj particles 30 init-pos x) + (the float (+ s3-4 (the int (* f28-1 (cos f26-5))))) + ) + (set! + (-> obj particles 30 init-pos y) + (the float (+ s4-3 (the int (* f28-1 (sin f26-5))))) + ) + ) + ) + (when *cheat-mode* + (let ((a0-46 "AUTO SAVE OFF")) + (if (-> *setting-control* current auto-save) + (set! a0-46 "AUTO SAVE ON") + ) + (let* + ((s3-5 (-> *display* frames (-> *display* on-screen) frame global-buf)) + (s4-4 (-> s3-5 base)) + ) + (draw-string-xy + a0-46 + s3-5 + (the int (+ 430.0 f30-0)) + 200 + (font-color blue-white) + (font-flags shadow kerning middle) + ) + (let ((a3-9 (-> s3-5 base))) + (let ((v1-81 (the-as object (-> s3-5 base)))) + (set! + (-> (the-as dma-packet v1-81) dma) + (new 'static 'dma-tag :id (dma-tag-id next)) + ) + (set! (-> (the-as dma-packet v1-81) vif0) (new 'static 'vif-tag)) + (set! (-> (the-as dma-packet v1-81) vif1) (new 'static 'vif-tag)) + (set! (-> s3-5 base) (&+ (the-as pointer v1-81) 16)) + ) + (dma-bucket-insert-tag + (-> *display* frames (-> *display* on-screen) frame bucket-group) + (bucket-id debug-draw0) + s4-4 + (the-as (pointer dma-tag) a3-9) + ) + ) + ) + ) + ) + (let ((a0-52 (-> obj icons 5 icon 0 root))) + (set-yaw-angle-clear-roll-pitch! + a0-52 + (- (y-angle a0-52) (* 182.04445 (* 4.0 (-> *display* time-adjust-ratio)))) + ) + ) + (let* + ((f28-2 + (* 0.00024414062 (the float (-> *progress-process* 0 in-out-position))) + ) + (f30-1 (* 300.0 f28-2)) + ) + (set! + (-> obj particles 18 init-pos x) + (the + float + (+ + (the int (the float (adjust-pos s5-0 50))) + 394 + (the int f30-1) + (-> obj right-x-offset) + ) + ) + ) + (set! + (-> obj particles 18 init-pos y) + (the float (- 40 (the int (* 80.0 f28-2)))) + ) + (set! + (-> obj icons 5 icon-x) + (+ + (the int (the float (adjust-pos s5-0 50))) + 393 + (the int f30-1) + (-> obj right-x-offset) + ) + ) + (set! + (-> obj icons 5 icon-y) + (- (-> obj small-orb-y-offset) (the int (* 80.0 f28-2))) + ) + (set! + (-> obj particles 16 init-pos x) + (the + float + (+ + (the int (the float (adjust-pos s5-0 100))) + 425 + (the int f30-1) + (-> obj right-x-offset) + ) + ) + ) + (set! + (-> obj particles 16 init-pos y) + (the float (- 112 (the int (* 60.0 f28-2)))) + ) + (set! + (-> obj particles 17 init-pos x) + (the + float + (+ + (the int (the float (adjust-pos s5-0 150))) + 442 + (the int f30-1) + (the int (* 0.7 (the float (-> obj right-x-offset)))) + ) + ) + ) + ) + ) + (set! (-> obj particles 17 init-pos y) 193.0) + 0 + (none) + ) diff --git a/test/decompiler/reference/engine/ui/progress/progress-part_REF.gc b/test/decompiler/reference/engine/ui/progress/progress-part_REF.gc new file mode 100644 index 0000000000..f6d1264282 --- /dev/null +++ b/test/decompiler/reference/engine/ui/progress/progress-part_REF.gc @@ -0,0 +1,3656 @@ +;;-*-Lisp-*- +(in-package goal) + +;; definition for function part-progress-hud-left-func +;; INFO: Return type mismatch float vs none. +(defun + part-progress-hud-left-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (let ((v1-0 *progress-process*)) + (set! (-> arg2 vector 0 w) (-> v1-0 0 left-side-x-scale)) + (set! (-> arg2 vector 1 w) (-> v1-0 0 left-side-y-scale)) + ) + (none) + ) + +;; definition for function part-progress-hud-right-func +;; INFO: Return type mismatch float vs none. +(defun + part-progress-hud-right-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (let ((v1-0 *progress-process*)) + (set! (-> arg2 vector 0 w) (-> v1-0 0 right-side-x-scale)) + (set! (-> arg2 vector 1 w) (-> v1-0 0 right-side-y-scale)) + ) + (none) + ) + +;; definition for function part-progress-hud-orb-func +;; INFO: Return type mismatch float vs none. +(defun + part-progress-hud-orb-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 0 w) (/ 5324.8 (-> *progress-process* 0 sides-x-scale))) + (set! (-> arg2 vector 1 w) (/ 5324.8 (-> *progress-process* 0 sides-x-scale))) + (none) + ) + +;; definition for function part-progress-hud-buzzer-func +;; INFO: Return type mismatch float vs none. +(defun + part-progress-hud-buzzer-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 0 w) (/ 6144.0 (-> *progress-process* 0 sides-x-scale))) + (set! (-> arg2 vector 1 w) (/ 6144.0 (-> *progress-process* 0 sides-x-scale))) + (none) + ) + +;; definition for function part-progress-hud-button-func +;; INFO: Return type mismatch float vs none. +(defun + part-progress-hud-button-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 0 w) (/ 6553.6 (-> *progress-process* 0 sides-x-scale))) + (set! (-> arg2 vector 1 w) (/ 6553.6 (-> *progress-process* 0 sides-x-scale))) + (none) + ) + +;; definition for function part-progress-hud-tint-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-hud-tint-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! + (-> arg2 vector 2 w) + (the float (- 64 (sar (* 63 (-> *progress-process* 0 in-out-position)) 12))) + ) + 0 + (none) + ) + +;; definition for function part-progress-card-slot-01-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-card-slot-01-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 2 w) (if (zero? (-> *progress-process* 0 option-index)) + 64.0 + 32.0 + ) + ) + (set! (-> arg2 vector 1 w) (-> *progress-process* 0 slot-scale)) + 0 + (none) + ) + +;; definition for function part-progress-card-slot-02-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-card-slot-02-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 2 w) (if (= (-> *progress-process* 0 option-index) 1) + 64.0 + 32.0 + ) + ) + (set! (-> arg2 vector 1 w) (-> *progress-process* 0 slot-scale)) + 0 + (none) + ) + +;; definition for function part-progress-card-slot-03-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-card-slot-03-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 2 w) (if (= (-> *progress-process* 0 option-index) 2) + 64.0 + 32.0 + ) + ) + (set! (-> arg2 vector 1 w) (-> *progress-process* 0 slot-scale)) + 0 + (none) + ) + +;; definition for function part-progress-card-slot-04-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-card-slot-04-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (set! (-> arg2 vector 2 w) (if (= (-> *progress-process* 0 option-index) 3) + 64.0 + 32.0 + ) + ) + (set! (-> arg2 vector 1 w) (-> *progress-process* 0 slot-scale)) + 0 + (none) + ) + +;; definition for function part-progress-card-cell-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-card-cell-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (let + ((f0-1 + (* 2.0 (+ -0.5 (-> *progress-process* 0 transition-percentage-invert))) + ) + ) + (if (< f0-1 0.0) + (set! f0-1 0.0) + ) + (set! (-> arg2 vector 2 w) (* 128.0 f0-1)) + ) + 0 + (none) + ) + +;; definition for function part-progress-save-icon-func +;; INFO: Return type mismatch int vs none. +(defun + part-progress-save-icon-func + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (let + ((f0-1 (* 6144.0 (-> *progress-process* 0 transition-percentage-invert)))) + (set! (-> arg2 vector 0 w) f0-1) + (set! (-> arg2 vector 1 w) f0-1) + ) + 0 + (none) + ) + +;; definition for function fuel-cell-progress-hud-orbit-callback +;; INFO: Return type mismatch int vs none. +(defun + fuel-cell-progress-hud-orbit-callback + ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix)) + (let* ((a0-1 (-> arg1 key)) + (s5-0 (the-as progress (-> a0-1 proc))) + (v1-0 (the int (the-as float (-> arg1 user-float)))) + (s4-0 -1) + ) + (let ((a1-1 0)) + (dotimes (a2-1 (-> *progress-process* 0 nb-of-particles)) + (if (= (-> a0-1 matrix) (-> s5-0 particles a1-1 part matrix)) + (set! s4-0 a1-1) + ) + (+! a1-1 1) + ) + ) + (cond + ((= v1-0 3) + (if (= (-> s5-0 particle-state s4-0) 1) + (set! (-> arg2 vector 2 w) 42.0) + (set! (-> arg2 vector 2 w) 128.0) + ) + 0 + ) + (else + (let ((s3-0 (new 'stack-no-clear 'vector)) + (s2-0 (new 'stack-no-clear 'vector)) + ) + (cond + ((or + (= s4-0 -1) + (= (-> s5-0 particle-state s4-0) 2) + (= (-> s5-0 particle-state s4-0) 1) + ) + (set! (-> arg2 vector 0 x) 245760.0) + ) + ((= v1-0 -1) + (set! (-> arg2 vector 0 x) 0.0) + (set! (-> arg2 vector 0 y) 0.0) + ) + (else + (vector<-cspace! + s3-0 + (-> s5-0 icons (logand s4-0 3) icon 0 node-list data v1-0) + ) + (vector<-cspace! + s2-0 + (-> s5-0 icons (logand s4-0 3) icon 0 node-list data 3) + ) + (vector-! s3-0 s3-0 s2-0) + (set! (-> arg2 vector 0 x) (* 48.0 (-> s3-0 x))) + (set! (-> arg2 vector 0 y) (* 60.0 (-> s3-0 y))) + (set! (-> arg2 vector 0 z) (* 32.0 (-> s3-0 z))) + ) + ) + ) + 0 + ) + ) + ) + 0 + (none) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 85) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x5 + :name "group-part-progress-hud-previous" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x14c :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 86) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x5 + :name "group-part-progress-hud-next" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x14d :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 87) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-hud-selector" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x14e :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 88) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-hud-left" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x14f :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 89) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-hud-right" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x150 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 90) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-hud-tint" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x151 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 91) + (new 'static 'sparticle-launch-group + :length 3 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-card-cell" + :launcher + (new 'static 'inline-array sparticle-group-item 3 + (new 'static 'sparticle-group-item :launcher #x88e :flags #x8) + (new 'static 'sparticle-group-item :launcher #x88f :flags #x8) + (new 'static 'sparticle-group-item :launcher #x890 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 570) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-button-x" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x920 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 571) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-button-square" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x921 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 572) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-button-triangle" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x922 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 573) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-button-circle" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x923 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 92) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-card-slot-01" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x85e :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 93) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-card-slot-02" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x85f :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 94) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-card-slot-03" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x860 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 95) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-card-slot-04" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x861 :flags #x8) + ) + :bounds (new 'static 'sphere :w 4096.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 96) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name + "group-part-progress-hud-power-cell-center" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x152 :flags #x8) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 337) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 61440.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 47104.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 32.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-tint-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2190) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 0.0000000000000000000015910302 + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 3276.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-cell-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2191) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 0.0000000000000000000015910044 + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xa + :flags #x1 + :initial-valuef 4300.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 3276.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-cell-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2192) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 0.0000000000000000000015909785 + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xa + :flags #x1 + :initial-valuef 9420.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 3276.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-cell-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2336) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0006104) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 6553.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-button-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2337) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0007324) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 6553.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-button-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2338) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0008545) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 6553.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-button-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2339) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0009766) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 6553.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-button-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2142) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 37683.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x13 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-slot-01-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2143) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 37683.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x13 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-slot-02-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2144) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 37683.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x13 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-slot-03-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2145) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 37683.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x13 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-card-slot-04-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 332) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.000244) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 4915.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 333) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.000122) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 4915.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 334) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0004883) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 7372.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 335) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.0) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 14336.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 53248.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-left-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 336) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec :field #x1 :initial-valuef 4.000366) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 24576.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 53248.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-right-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 339) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203100) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 1228.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 4.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 340) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203100) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 1228.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 5.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 341) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203100) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 1228.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 6.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 342) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203100) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 1228.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 7.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 343) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203100) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 819.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 9.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 338) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 13 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203000) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 4915.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef 3.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 344) + (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-valuef -0.53333336 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 345) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 22 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200200) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 0.5 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 2160.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 1024.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xe + :initial-valuef (the-as float #x4) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x10 + :flags #x1 + :random-rangef 65536.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 286.72 + :random-rangef 1884.16 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x1c + :flags #x1 + :initial-valuef 40.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x1f + :flags #x1 + :initial-valuef -27.306667 + :random-rangef 54.613335 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x20 + :flags #x1 + :initial-valuef 40.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x24 + :flags #x1 + :initial-valuef 0.35555556 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x220c) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef -1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec + :field #x32 + :initial-valuef (the-as float #x5a) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #xe8) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 346) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 21 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200200) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 0.06 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 2160.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 4096.0 + :random-rangef 1024.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xe + :initial-valuef (the-as float #x4) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x10 + :flags #x1 + :random-rangef 65536.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 409.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x2 + :random-rangef (the-as float #x1) + :random-multf 255.0 + ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x1c + :flags #x1 + :initial-valuef 40.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x1f + :flags #x1 + :initial-valuef -27.306667 + :random-rangef 54.613335 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x24 + :flags #x1 + :initial-valuef 0.32 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x220c) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef -1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec + :field #x32 + :initial-valuef (the-as float #x4b) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #xe8) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 347) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 16 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 2160.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x10 + :flags #x1 + :random-rangef 65536.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 7372.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :random-rangef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x1f + :flags #x1 + :initial-valuef -72.81778 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x220c) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef -1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 348) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 16 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 2160.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 9830.4 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x10 + :flags #x1 + :random-rangef 65536.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 64.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x1f + :flags #x1 + :initial-valuef 54.613335 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x220c) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x30 + :flags #x1 + :initial-valuef -1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'fuel-cell-progress-hud-orbit-callback + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 97) + (new 'static 'sparticle-launch-group + :length 8 + :duration #xbb8 + :linger-duration #x5dc + :flags #x5 + :name + "group-part-progress-hud-power-cell-whole" + :launcher + (new 'static 'inline-array sparticle-group-item 8 + (new 'static 'sparticle-group-item :launcher #x152 :flags #x8) + (new 'static 'sparticle-group-item + :launcher #x15b + :flags #x8 + :period #xe10 + :length #x5 + ) + (new 'static 'sparticle-group-item + :launcher #x15c + :flags #x8 + :period #xe10 + :length #x5 + ) + (new 'static 'sparticle-group-item :launcher #x157 :flags #x8) + (new 'static 'sparticle-group-item :launcher #x153 :flags #x8) + (new 'static 'sparticle-group-item :launcher #x154 :flags #x8) + (new 'static 'sparticle-group-item :launcher #x155 :flags #x8) + (new 'static 'sparticle-group-item :launcher #x156 :flags #x8) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 98) + (new 'static 'sparticle-launch-group + :length 2 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-buzzer" + :launcher + (new 'static 'inline-array sparticle-group-item 2 + (new 'static 'sparticle-group-item + :launcher #x7be + :flags #x8 + :binding #x7bd + ) + (new 'static 'sparticle-group-item :launcher #x7bd :flags #xc) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1982) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202a00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 9011.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1981) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 17 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202a00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #xa :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #xb + :flags #x1 + :initial-valuef 5461.3335 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 409.6 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 8192.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x18 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x19 + :flags #x1 + :initial-valuef 218.45334 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x1b :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2284) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 99) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-orb" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x7bf :flags #x8) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1983) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202c00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 9011.2 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 100) + (new 'static 'sparticle-launch-group + :length 2 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-buzzer-small" + :launcher + (new 'static 'inline-array sparticle-group-item 2 + (new 'static 'sparticle-group-item + :launcher #x7c1 + :flags #x8 + :binding #x7c0 + ) + (new 'static 'sparticle-group-item :launcher #x7c0 :flags #xc) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1985) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 11 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202a00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 4096.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2200) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1984) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 18 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202a00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #xa :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #xb + :flags #x1 + :initial-valuef 5461.3335 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xc + :flags #x1 + :initial-valuef 204.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 6144.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x18 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x19 + :flags #x1 + :initial-valuef 206.31703 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec :field #x1b :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2284) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-buzzer-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 101) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-orb-small" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x7c2 :flags #x8) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 1986) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x202c00) + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 5324.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-hud-orb-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-group-id-table* 615) + (new 'static 'sparticle-launch-group + :length 1 + :duration #xbb8 + :linger-duration #x5dc + :flags #x4 + :name "group-part-progress-save-icon" + :launcher + (new 'static 'inline-array sparticle-group-item 1 + (new 'static 'sparticle-group-item :launcher #x9ae :flags #x8) + ) + :bounds (new 'static 'sphere :w 409600.0) + ) + ) + +;; failed to figure out what this is: +(set! + (-> *part-id-table* 2478) + (new 'static 'sparticle-launcher + :init-specs + (new 'static 'inline-array sp-field-init-spec 12 + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 0.0000000000000000000015909527 + ) + (new 'static 'sp-field-init-spec + :field #x6 + :flags #x1 + :initial-valuef 1.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #xd + :flags #x1 + :initial-valuef 7372.8 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x11 + :flags #x3 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x12 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x13 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x14 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x15 + :flags #x1 + :initial-valuef 128.0 + :random-multf 1.0 + ) + (new 'static 'sp-field-init-spec + :field #x2e + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x2f + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x31 + :flags #x5 + :sym 'part-progress-save-icon-func + ) + (new 'static 'sp-field-init-spec :field #x43) + ) + ) + ) + +;; definition for method 34 of type progress +;; INFO: Return type mismatch int vs none. +(defmethod initialize-particles progress ((obj progress)) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-0 (-> obj nb-of-particles))) + (set! (-> obj particles s5-0) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-0 part) + (create-launch-control (-> *part-group-id-table* 90) obj) + ) + (set! (-> obj particles s5-0 init-pos x) 256.0) + (set! (-> obj particles s5-0 init-pos y) 224.0) + (set! (-> obj particles s5-0 init-pos z) 16.0) + (set! (-> obj particles s5-0 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-1 (-> obj nb-of-particles))) + (set! (-> obj particles s5-1) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-1 part) + (create-launch-control (-> *part-group-id-table* 88) obj) + ) + (set! (-> obj particles s5-1 init-pos x) -42.0) + (set! (-> obj particles s5-1 init-pos y) 254.0) + (set! (-> obj particles s5-1 init-pos z) 5.0) + (set! (-> obj particles s5-1 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-2 (-> obj nb-of-particles))) + (set! (-> obj particles s5-2) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-2 part) + (create-launch-control (-> *part-group-id-table* 89) obj) + ) + (set! (-> obj particles s5-2 init-pos x) 610.0) + (set! (-> obj particles s5-2 init-pos y) 254.0) + (set! (-> obj particles s5-2 init-pos z) 5.0) + (set! (-> obj particles s5-2 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-3 (-> obj nb-of-particles))) + (set! (-> obj particles s5-3) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-3 part) + (create-launch-control (-> *part-group-id-table* 85) obj) + ) + (set! (-> obj particles s5-3 init-pos x) -320.0) + (set! (-> obj particles s5-3 init-pos y) 40.0) + (set! (-> obj particles s5-3 init-pos z) 14.0) + (set! (-> obj particles s5-3 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-4 (-> obj nb-of-particles))) + (set! (-> obj particles s5-4) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-4 part) + (create-launch-control (-> *part-group-id-table* 86) obj) + ) + (set! (-> obj particles s5-4 init-pos x) -320.0) + (set! (-> obj particles s5-4 init-pos y) 400.0) + (set! (-> obj particles s5-4 init-pos z) 14.0) + (set! (-> obj particles s5-4 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-5 (-> obj nb-of-particles))) + (set! (-> obj particles s5-5) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-5 part) + (create-launch-control (-> *part-group-id-table* 87) obj) + ) + (set! (-> obj particles s5-5 init-pos x) -320.0) + (set! (-> obj particles s5-5 init-pos y) 194.0) + (set! (-> obj particles s5-5 init-pos z) 15.0) + (set! (-> obj particles s5-5 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-6 (-> obj nb-of-particles))) + (set! (-> obj particles s5-6) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-6 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-6 init-pos x) -320.0) + (set! (-> obj particles s5-6 init-pos y) 194.0) + (set! (-> obj particles s5-6 init-pos z) 14.0) + (set! (-> obj particles s5-6 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-7 (-> obj nb-of-particles))) + (set! (-> obj particles s5-7) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-7 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-7 init-pos x) -320.0) + (set! (-> obj particles s5-7 init-pos y) 194.0) + (set! (-> obj particles s5-7 init-pos z) 14.0) + (set! (-> obj particles s5-7 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-8 (-> obj nb-of-particles))) + (set! (-> obj particles s5-8) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-8 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-8 init-pos x) -320.0) + (set! (-> obj particles s5-8 init-pos y) 194.0) + (set! (-> obj particles s5-8 init-pos z) 14.0) + (set! (-> obj particles s5-8 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-9 (-> obj nb-of-particles))) + (set! (-> obj particles s5-9) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-9 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-9 init-pos x) -320.0) + (set! (-> obj particles s5-9 init-pos y) 194.0) + (set! (-> obj particles s5-9 init-pos z) 14.0) + (set! (-> obj particles s5-9 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-10 (-> obj nb-of-particles))) + (set! (-> obj particles s5-10) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-10 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-10 init-pos x) -320.0) + (set! (-> obj particles s5-10 init-pos y) 194.0) + (set! (-> obj particles s5-10 init-pos z) 14.0) + (set! (-> obj particles s5-10 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-11 (-> obj nb-of-particles))) + (set! (-> obj particles s5-11) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-11 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-11 init-pos x) -320.0) + (set! (-> obj particles s5-11 init-pos y) 194.0) + (set! (-> obj particles s5-11 init-pos z) 14.0) + (set! (-> obj particles s5-11 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-12 (-> obj nb-of-particles))) + (set! (-> obj particles s5-12) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-12 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-12 init-pos x) -320.0) + (set! (-> obj particles s5-12 init-pos y) 194.0) + (set! (-> obj particles s5-12 init-pos z) 14.0) + (set! (-> obj particles s5-12 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-13 (-> obj nb-of-particles))) + (set! (-> obj particles s5-13) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-13 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-13 init-pos x) -320.0) + (set! (-> obj particles s5-13 init-pos y) 194.0) + (set! (-> obj particles s5-13 init-pos z) 14.0) + (set! (-> obj particles s5-13 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-14 (-> obj nb-of-particles))) + (set! (-> obj particles s5-14) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-14 part) + (create-launch-control (-> *part-group-id-table* 98) obj) + ) + (set! (-> obj particles s5-14 init-pos x) -320.0) + (set! (-> obj particles s5-14 init-pos y) 224.0) + (set! (-> obj particles s5-14 init-pos z) 14.0) + (set! (-> obj particles s5-14 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-15 (-> obj nb-of-particles))) + (set! (-> obj particles s5-15) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-15 part) + (create-launch-control (-> *part-group-id-table* 99) obj) + ) + (set! (-> obj particles s5-15 init-pos x) -320.0) + (set! (-> obj particles s5-15 init-pos y) 224.0) + (set! (-> obj particles s5-15 init-pos z) 14.0) + (set! (-> obj particles s5-15 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-16 (-> obj nb-of-particles))) + (set! (-> obj particles s5-16) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-16 part) + (create-launch-control (-> *part-group-id-table* 97) obj) + ) + (set! (-> obj particles s5-16 init-pos x) -320.0) + (set! (-> obj particles s5-16 init-pos y) 112.0) + (set! (-> obj particles s5-16 init-pos z) 4.0) + (set! (-> obj particles s5-16 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-17 (-> obj nb-of-particles))) + (set! (-> obj particles s5-17) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-17 part) + (create-launch-control (-> *part-group-id-table* 100) obj) + ) + (set! (-> obj particles s5-17 init-pos x) -320.0) + (set! (-> obj particles s5-17 init-pos y) 193.0) + (set! (-> obj particles s5-17 init-pos z) 4.0) + (set! (-> obj particles s5-17 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-18 (-> obj nb-of-particles))) + (set! (-> obj particles s5-18) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-18 part) + (create-launch-control (-> *part-group-id-table* 101) obj) + ) + (set! (-> obj particles s5-18 init-pos x) -320.0) + (set! (-> obj particles s5-18 init-pos y) 40.0) + (set! (-> obj particles s5-18 init-pos z) 4.0) + (set! (-> obj particles s5-18 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-19 (-> obj nb-of-particles))) + (set! (-> obj particles s5-19) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-19 part) + (create-launch-control (-> *part-group-id-table* 92) obj) + ) + (set! (-> obj particles s5-19 init-pos x) -320.0) + (set! (-> obj particles s5-19 init-pos y) 90.0) + (set! (-> obj particles s5-19 init-pos z) 16.0) + (set! (-> obj particles s5-19 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-20 (-> obj nb-of-particles))) + (set! (-> obj particles s5-20) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-20 part) + (create-launch-control (-> *part-group-id-table* 93) obj) + ) + (set! (-> obj particles s5-20 init-pos x) -320.0) + (set! (-> obj particles s5-20 init-pos y) 172.0) + (set! (-> obj particles s5-20 init-pos z) 16.0) + (set! (-> obj particles s5-20 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-21 (-> obj nb-of-particles))) + (set! (-> obj particles s5-21) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-21 part) + (create-launch-control (-> *part-group-id-table* 94) obj) + ) + (set! (-> obj particles s5-21 init-pos x) -320.0) + (set! (-> obj particles s5-21 init-pos y) 254.0) + (set! (-> obj particles s5-21 init-pos z) 16.0) + (set! (-> obj particles s5-21 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-22 (-> obj nb-of-particles))) + (set! (-> obj particles s5-22) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-22 part) + (create-launch-control (-> *part-group-id-table* 95) obj) + ) + (set! (-> obj particles s5-22 init-pos x) -320.0) + (set! (-> obj particles s5-22 init-pos y) 336.0) + (set! (-> obj particles s5-22 init-pos z) 16.0) + (set! (-> obj particles s5-22 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-23 (-> obj nb-of-particles))) + (set! (-> obj particles s5-23) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-23 part) + (create-launch-control (-> *part-group-id-table* 91) obj) + ) + (set! (-> obj particles s5-23 init-pos x) -320.0) + (set! (-> obj particles s5-23 init-pos y) 102.0) + (set! (-> obj particles s5-23 init-pos z) 13.0) + (set! (-> obj particles s5-23 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-24 (-> obj nb-of-particles))) + (set! (-> obj particles s5-24) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-24 part) + (create-launch-control (-> *part-group-id-table* 91) obj) + ) + (set! (-> obj particles s5-24 init-pos x) -320.0) + (set! (-> obj particles s5-24 init-pos y) 184.0) + (set! (-> obj particles s5-24 init-pos z) 13.0) + (set! (-> obj particles s5-24 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-25 (-> obj nb-of-particles))) + (set! (-> obj particles s5-25) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-25 part) + (create-launch-control (-> *part-group-id-table* 91) obj) + ) + (set! (-> obj particles s5-25 init-pos x) -320.0) + (set! (-> obj particles s5-25 init-pos y) 266.0) + (set! (-> obj particles s5-25 init-pos z) 13.0) + (set! (-> obj particles s5-25 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-26 (-> obj nb-of-particles))) + (set! (-> obj particles s5-26) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-26 part) + (create-launch-control (-> *part-group-id-table* 91) obj) + ) + (set! (-> obj particles s5-26 init-pos x) -320.0) + (set! (-> obj particles s5-26 init-pos y) 348.0) + (set! (-> obj particles s5-26 init-pos z) 13.0) + (set! (-> obj particles s5-26 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-27 (-> obj nb-of-particles))) + (set! (-> obj particles s5-27) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-27 part) + (create-launch-control (-> *part-group-id-table* 570) obj) + ) + (set! (-> obj particles s5-27 init-pos x) -320.0) + (set! (-> obj particles s5-27 init-pos y) 338.0) + (set! (-> obj particles s5-27 init-pos z) 4.0) + (set! (-> obj particles s5-27 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-28 (-> obj nb-of-particles))) + (set! (-> obj particles s5-28) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-28 part) + (create-launch-control (-> *part-group-id-table* 571) obj) + ) + (set! (-> obj particles s5-28 init-pos x) -320.0) + (set! (-> obj particles s5-28 init-pos y) 338.0) + (set! (-> obj particles s5-28 init-pos z) 4.0) + (set! (-> obj particles s5-28 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-29 (-> obj nb-of-particles))) + (set! (-> obj particles s5-29) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-29 part) + (create-launch-control (-> *part-group-id-table* 572) obj) + ) + (set! (-> obj particles s5-29 init-pos x) -320.0) + (set! (-> obj particles s5-29 init-pos y) 338.0) + (set! (-> obj particles s5-29 init-pos z) 4.0) + (set! (-> obj particles s5-29 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-30 (-> obj nb-of-particles))) + (set! (-> obj particles s5-30) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-30 part) + (create-launch-control (-> *part-group-id-table* 573) obj) + ) + (set! (-> obj particles s5-30 init-pos x) -320.0) + (set! (-> obj particles s5-30 init-pos y) 338.0) + (set! (-> obj particles s5-30 init-pos z) 4.0) + (set! (-> obj particles s5-30 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + (when (< (-> obj nb-of-particles) (-> obj max-nb-of-particles)) + (let ((s5-31 (-> obj nb-of-particles))) + (set! (-> obj particles s5-31) (new 'static 'hud-particle)) + (set! + (-> obj particles s5-31 part) + (create-launch-control (-> *part-group-id-table* 615) obj) + ) + (set! (-> obj particles s5-31 init-pos x) -320.0) + (set! (-> obj particles s5-31 init-pos y) 180.0) + (set! (-> obj particles s5-31 init-pos z) 4.0) + (set! (-> obj particles s5-31 part matrix) -1) + ) + (+! (-> obj nb-of-particles) 1) + ) + 0 + (none) + ) diff --git a/test/decompiler/reference/engine/ui/progress/progress-static_REF.gc b/test/decompiler/reference/engine/ui/progress/progress-static_REF.gc index b979fda3b2..17c3cd2720 100644 --- a/test/decompiler/reference/engine/ui/progress/progress-static_REF.gc +++ b/test/decompiler/reference/engine/ui/progress/progress-static_REF.gc @@ -474,10 +474,10 @@ ) ) -;; definition for symbol *options-remap*, type (array array) +;; definition for symbol *options-remap*, type (array (array game-option)) (define *options-remap* - (the-as (array array) + (the-as (array (array game-option)) (new 'static 'boxed-array :type array :length 0 :allocated-length 35) ) ) @@ -1724,4 +1724,3 @@ ;; definition for symbol *game-counts*, type game-count-info (define *game-counts* (the-as game-count-info #f)) - diff --git a/test/decompiler/reference/kernel/gkernel-h_REF.gc b/test/decompiler/reference/kernel/gkernel-h_REF.gc index f3ddedaa6b..7dda7abf1e 100644 --- a/test/decompiler/reference/kernel/gkernel-h_REF.gc +++ b/test/decompiler/reference/kernel/gkernel-h_REF.gc @@ -302,7 +302,7 @@ (deftype state (protect-frame) ((code function :offset-assert 16) (trans (function none) :offset-assert 20) - (post (function none) :offset-assert 24) + (post function :offset-assert 24) (enter function :offset-assert 28) (event (function process int symbol event-message-block object) :offset-assert 32) ) diff --git a/test/decompiler/reference/levels/beach/beach-rocks_REF.gc b/test/decompiler/reference/levels/beach/beach-rocks_REF.gc index 9669de75d9..b96ef6c5af 100644 --- a/test/decompiler/reference/levels/beach/beach-rocks_REF.gc +++ b/test/decompiler/reference/levels/beach/beach-rocks_REF.gc @@ -44,133 +44,132 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 22 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201d00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201d00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40400000 - :random-range #x40c00000 - :random-mult #x3f800000 + :initial-valuef 3.0 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range -964689920 - :random-mult #x3f800000 + :random-rangef -16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x44800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 1024.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x44800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 1024.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c00000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x435a740e - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x1c - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 218.45334 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x1c :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1017482226 - :random-range #x43da740e - :random-mult #x3f800000 + :initial-valuef -218.45334 + :random-rangef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1053184142 - :random-range -1056047454 - :random-mult #x3f800000 + :initial-valuef -11.605333 + :random-rangef -8.874666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f7851ec - :random-mult #x3f800000 + :initial-valuef 0.97 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x46638e39 - :random-range #x470e38e4 - :random-mult #x3f800000 + :initial-valuef 14563.556 + :random-rangef 36408.89 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x46a00000 - :random-mult #x3f800000 + :random-rangef 20480.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -183,139 +182,138 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 23 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201700) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201700) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 8.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range -964689920 - :random-mult #x3f800000 + :random-rangef -16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x45000000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42800000 - :random-mult #x3f800000 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x435a740e - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x1c - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 218.45334 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x1c :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1017482226 - :random-range #x43da740e - :random-mult #x3f800000 + :initial-valuef -218.45334 + :random-rangef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1112620226 - :random-mult #x3f800000 + :initial-valuef -0.08533333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1067813874 - :random-range -1056047454 - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-rangef -8.874666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f6e147b - :random-mult #x3f800000 + :initial-valuef 0.93 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x46638e39 - :random-range #x470e38e4 - :random-mult #x3f800000 + :initial-valuef 14563.556 + :random-rangef 36408.89 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x46a00000 - :random-mult #x3f800000 + :random-rangef 20480.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -328,156 +326,159 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 26 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-range #x40400000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-rangef 3.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range -964689920 - :random-mult #x3f800000 + :random-rangef -16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46c00000 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef 24576.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x435a740e - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 218.45334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x4323d70a - :random-mult #x3f800000 + :initial-valuef 163.84 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value -1121008834 - :random-mult #x3f800000 + :initial-valuef -0.042666666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1115998039 - :random-mult #x3f800000 + :initial-valuef -0.061333332 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value -1121008834 - :random-mult #x3f800000 + :initial-valuef -0.042666666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1123872145 - :random-mult #x3f800000 + :initial-valuef -0.032 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1073540497 - :random-range -1057993610 - :random-mult #x3f800000 + :initial-valuef -2.048 + :random-rangef -7.5093336 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x46c00000 - :random-mult #x3f800000 + :random-rangef 24576.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -507,156 +508,159 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 26 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40400000 - :random-range #x40400000 - :random-mult #x3f800000 + :initial-valuef 3.0 + :random-rangef 3.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range -964689920 - :random-mult #x3f800000 + :random-rangef -16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46e00000 - :random-range #x47100000 - :random-mult #x3f800000 + :initial-valuef 28672.0 + :random-rangef 36864.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42400000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 48.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x425a740e - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef 54.613335 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x42da740e - :random-mult #x3f800000 + :initial-valuef 109.22667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value -1109756914 - :random-mult #x3f800000 + :initial-valuef -0.10666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1105394838 - :random-mult #x3f800000 + :initial-valuef -0.15333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value -1109756914 - :random-mult #x3f800000 + :initial-valuef -0.10666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1109756914 - :random-mult #x3f800000 + :initial-valuef -0.10666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1073540497 - :random-range -1057993610 - :random-mult #x3f800000 + :initial-valuef -2.048 + :random-rangef -7.5093336 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f7ae148 - :random-mult #x3f800000 + :initial-valuef 0.98 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x46000000 - :random-mult #x3f800000 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -700,105 +704,108 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -968884224 - :random-mult #x3f800000 + :initial-valuef -12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x44cccccd - :random-range #x4499999a - :random-mult #x3f800000 + :initial-valuef 1638.4 + :random-rangef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x48000000 - :random-range #x47200000 - :random-mult #x3f800000 + :initial-valuef 131072.0 + :random-rangef 40960.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x1 - :initial-value #x465a740e - :random-mult #x3f800000 + :initial-valuef 13981.014 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value -1109756914 - :random-mult #x3f800000 + :initial-valuef -0.10666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1105394838 - :random-mult #x3f800000 + :initial-valuef -0.15333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value -1109756914 - :random-mult #x3f800000 + :initial-valuef -0.10666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1068708659 - :random-mult #x3f800000 + :initial-valuef -3.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 30 - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -811,139 +818,138 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 23 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201700) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201700) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range -964689920 - :random-mult #x3f800000 + :random-rangef -16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x45000000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42800000 - :random-mult #x3f800000 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x43da740e - :random-range #x445a740e - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x1c - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 436.90668 + :random-rangef 873.81335 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x1c :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1017482226 - :random-range #x43da740e - :random-mult #x3f800000 + :initial-valuef -218.45334 + :random-rangef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1112620226 - :random-mult #x3f800000 + :initial-valuef -0.08533333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1067813874 - :random-range -1056047454 - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-rangef -8.874666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f733333 - :random-mult #x3f800000 + :initial-valuef 0.95 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x462aaaab - :random-range #x45638e39 - :random-mult #x3f800000 + :initial-valuef 10922.667 + :random-rangef 3640.889 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x46a00000 - :random-mult #x3f800000 + :random-rangef 20480.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -956,157 +962,160 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 26 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range -964689920 - :random-mult #x3f800000 + :random-rangef -16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47000000 - :random-range #x47000000 - :random-mult #x3f800000 + :initial-valuef 32768.0 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42400000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 48.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x43da740e - :random-range #x44a3d70a - :random-mult #x3f800000 + :initial-valuef 436.90668 + :random-rangef 1310.72 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x43088889 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 136.53334 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value -1109756914 - :random-mult #x3f800000 + :initial-valuef -0.10666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1105394838 - :random-mult #x3f800000 + :initial-valuef -0.15333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value -1109756914 - :random-mult #x3f800000 + :initial-valuef -0.10666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1109756914 - :random-mult #x3f800000 + :initial-valuef -0.10666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1073540497 - :random-range -1057993610 - :random-mult #x3f800000 + :initial-valuef -2.048 + :random-rangef -7.5093336 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f59999a - :random-mult #x3f800000 + :initial-valuef 0.85 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x468e38e4 - :random-mult #x3f800000 + :random-rangef 18204.445 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x46000000 - :random-mult #x3f800000 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) diff --git a/test/decompiler/reference/levels/beach/lurkercrab_REF.gc b/test/decompiler/reference/levels/beach/lurkercrab_REF.gc index fdb1e2563f..a1daa67915 100644 --- a/test/decompiler/reference/levels/beach/lurkercrab_REF.gc +++ b/test/decompiler/reference/levels/beach/lurkercrab_REF.gc @@ -33,94 +33,97 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3e99999a - :random-range #x3e99999a - :random-mult #x3f800000 + :initial-valuef 0.3 + :random-rangef 0.3 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -973078528 - :random-mult #x3f800000 + :initial-valuef -8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46000000 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef 8192.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c80000 - :random-range #x41f00000 - :random-mult #x3f800000 + :initial-valuef 100.0 + :random-rangef 30.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42a00000 - :random-range #x41a00000 - :random-mult #x3f800000 + :initial-valuef 80.0 + :random-rangef 20.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x41f00000 - :random-range #x41f00000 - :random-mult #x3f800000 + :initial-valuef 30.0 + :random-rangef 30.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42400000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 48.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x43088889 - :random-mult #x3f800000 + :initial-valuef 136.53334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1101368306 - :random-mult #x3f800000 + :initial-valuef -0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1106522267 - :random-mult #x3f800000 + :initial-valuef -0.13653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -133,107 +136,110 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3dcccccd - :random-range #x3f800000 - :random-mult #x3f800000 + :initial-valuef 0.1 + :random-rangef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -973078528 - :random-mult #x3f800000 + :initial-valuef -8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x444ccccd - :random-range #x444ccccd - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-rangef 819.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42960000 - :random-range #x42700000 - :random-mult #x3f800000 + :initial-valuef 75.0 + :random-rangef 60.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42700000 - :random-range #x41a00000 - :random-mult #x3f800000 + :initial-valuef 60.0 + :random-rangef 20.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x41b80000 - :random-range #x41f00000 - :random-mult #x3f800000 + :initial-valuef 23.0 + :random-rangef 30.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42da740e - :random-range #x42da740e - :random-mult #x3f800000 + :initial-valuef 109.22667 + :random-rangef 109.22667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1059425266 - :random-mult #x3f800000 + :initial-valuef -6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x1004 - :random-mult 1 + :initial-valuef (the-as float #x1004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x45aaaaab - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 5461.3335 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x444ccccd - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1435,7 +1441,3 @@ nav-enemy-default-event-handler (go (method-of-object obj nav-enemy-idle)) (none) ) - - - - diff --git a/test/decompiler/reference/levels/beach/mayor_REF.gc b/test/decompiler/reference/levels/beach/mayor_REF.gc index 80624805ed..da00f410c5 100644 --- a/test/decompiler/reference/levels/beach/mayor_REF.gc +++ b/test/decompiler/reference/levels/beach/mayor_REF.gc @@ -2167,7 +2167,7 @@ (behavior () (let ((t9-0 (-> (method-of-type process-taskable idle) post))) (if t9-0 - (t9-0) + ((the-as (function none) t9-0)) ) ) (dummy-45 (-> self root-override)) diff --git a/test/decompiler/reference/levels/common/basebutton_REF.gc b/test/decompiler/reference/levels/common/basebutton_REF.gc index 46c248246b..eb5f1d1602 100644 --- a/test/decompiler/reference/levels/common/basebutton_REF.gc +++ b/test/decompiler/reference/levels/common/basebutton_REF.gc @@ -504,7 +504,6 @@ ) ;; definition for method 26 of type basebutton -;; INFO: Return type mismatch int vs none. (defmethod TODO-RENAME-26 basebutton ((obj basebutton)) (dummy-14 obj *generic-button-sg* '()) (logior! (-> obj skel status) 1) diff --git a/test/decompiler/reference/levels/common/dark-eco-pool_REF.gc b/test/decompiler/reference/levels/common/dark-eco-pool_REF.gc index bbb225c710..4eeebabd60 100644 --- a/test/decompiler/reference/levels/common/dark-eco-pool_REF.gc +++ b/test/decompiler/reference/levels/common/dark-eco-pool_REF.gc @@ -195,93 +195,92 @@ (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 #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (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 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #xb :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x46800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x44800000 - :random-mult #x3f800000 + :initial-valuef 1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x44400000 - :random-mult #x3f800000 + :initial-valuef 768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x1 - :initial-value -1057635697 - :random-mult #x3f800000 + :initial-valuef -7.68 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1068708659 - :random-mult #x3f800000 + :initial-valuef -3.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 10 - :random-mult 1 + :initial-valuef (the-as float #xa) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 15 - :random-mult 1 + :initial-valuef (the-as float #xf) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x7e5 + :initial-valuef (the-as float #x7e5) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -297,26 +296,22 @@ (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1079781622 - :random-mult #x3f800000 + :initial-valuef -1.28 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -453,71 +448,74 @@ (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 #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47000000 - :random-mult #x3f800000 + :initial-valuef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :random-range #x42c00000 - :random-mult #x3f800000 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1075179870 - :random-mult #x3f800000 + :initial-valuef -1.8285716 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 54 - :random-mult 1 + :initial-valuef (the-as float #x36) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -530,77 +528,76 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 14 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-range #x40c00000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x4323d70a - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 163.84 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1067813874 - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f70a3d7 - :random-mult #x3f800000 + :initial-valuef 0.94 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xf0 - :random-mult 1 + :initial-valuef (the-as float #xf0) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 8 - :random-mult 1 + :initial-valuef (the-as float #x8) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x46c71c72 - :random-mult #x3f800000 + :random-rangef 25486.223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -613,125 +610,128 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value #x4499999a - :random-range #x4499999a - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-rangef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x44cccccd - :random-range #x4499999a - :random-mult #x3f800000 + :initial-valuef 1638.4 + :random-rangef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :random-range #x42c00000 - :random-mult #x3f800000 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x18 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :initial-value #x42da740e - :random-range #x43da740e - :random-mult #x3f800000 + :initial-valuef 109.22667 + :random-rangef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1066512368 - :random-mult #x3f800000 + :initial-valuef -3.7236366 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x2 - :initial-value -1034259442 - :random-range 1 - :random-mult #x42da740e + :initial-valuef -54.613335 + :random-rangef (the-as float #x1) + :random-multf 109.22667 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1098348407 - :random-mult #x3f800000 + :initial-valuef -0.26666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1102669812 - :random-mult #x3f800000 + :initial-valuef -0.19393939 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 60 - :random-range #xb3 - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-rangef (the-as float #xb3) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x408c - :random-mult 1 + :initial-valuef (the-as float #x408c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -744,95 +744,102 @@ (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 #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x44cccccd - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 1638.4 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42000000 - :random-range #x42c00000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1071495275 - :random-mult #x3f800000 + :initial-valuef -2.535619 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1130624575 - :random-mult #x3f800000 + :initial-valuef -0.01904762 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1093552360 - :random-range -1088599726 - :random-mult #x3f800000 + :initial-valuef -0.40960002 + :random-rangef -0.6144 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 30 - :random-range #xef - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-rangef (the-as float #xef) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #xf0 - :random-mult 1 + :initial-valuef (the-as float #xf0) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #xc6) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value #xc6) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -844,77 +851,76 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 14 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-range #x40c00000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-rangef 6.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x4323d70a - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 163.84 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1067813874 - :random-mult #x3f800000 + :initial-valuef -3.4133334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f70a3d7 - :random-mult #x3f800000 + :initial-valuef 0.94 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xf0 - :random-mult 1 + :initial-valuef (the-as float #xf0) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 8 - :random-mult 1 + :initial-valuef (the-as float #x8) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x46c71c72 - :random-mult #x3f800000 + :random-rangef 25486.223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -927,126 +933,129 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value #x4499999a - :random-range #x4499999a - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-rangef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x44cccccd - :random-range #x4499999a - :random-mult #x3f800000 + :initial-valuef 1638.4 + :random-rangef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x41800000 - :random-mult #x3f800000 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x18 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :initial-value #x42da740e - :random-range #x43da740e - :random-mult #x3f800000 + :initial-valuef 109.22667 + :random-rangef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1066512368 - :random-mult #x3f800000 + :initial-valuef -3.7236366 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x2 - :initial-value -1034259442 - :random-range 1 - :random-mult #x42da740e + :initial-valuef -54.613335 + :random-rangef (the-as float #x1) + :random-multf 109.22667 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1098348407 - :random-mult #x3f800000 + :initial-valuef -0.26666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1102669812 - :random-mult #x3f800000 + :initial-valuef -0.19393939 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 60 - :random-range #xb3 - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-rangef (the-as float #xb3) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x408c - :random-mult 1 + :initial-valuef (the-as float #x408c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1059,95 +1068,102 @@ (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 #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x44cccccd - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 1638.4 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x41800000 - :random-mult #x3f800000 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1071495275 - :random-mult #x3f800000 + :initial-valuef -2.535619 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1130624575 - :random-mult #x3f800000 + :initial-valuef -0.01904762 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1093552360 - :random-range -1088599726 - :random-mult #x3f800000 + :initial-valuef -0.40960002 + :random-rangef -0.6144 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 30 - :random-range #xef - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-rangef (the-as float #xef) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #xf0 - :random-mult 1 + :initial-valuef (the-as float #xf0) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #xc6) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value #xc6) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -1220,7 +1236,3 @@ (none) ) ) - - - - diff --git a/test/decompiler/reference/levels/common/nav-enemy_REF.gc b/test/decompiler/reference/levels/common/nav-enemy_REF.gc index b99986e387..823901459a 100644 --- a/test/decompiler/reference/levels/common/nav-enemy_REF.gc +++ b/test/decompiler/reference/levels/common/nav-enemy_REF.gc @@ -3098,7 +3098,7 @@ nav-enemy-default-event-handler :settings (new 'static 'shadow-settings :center - (new 'static 'vector :w 0.000000000000000000000000000000000000000000056) + (new 'static 'vector :w (the-as float #x28)) :shadow-dir (new 'static 'vector :y -1.0 :w 614400.0) :bot-plane (new 'static 'plane :y 1.0 :w 4096.0) diff --git a/test/decompiler/reference/levels/common/static-screen_REF.gc b/test/decompiler/reference/levels/common/static-screen_REF.gc index 4942be8d9f..5f325bc7c6 100644 --- a/test/decompiler/reference/levels/common/static-screen_REF.gc +++ b/test/decompiler/reference/levels/common/static-screen_REF.gc @@ -65,64 +65,67 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 12 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x5c600000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 252201580000000000.0 + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45970a3d - :random-mult #x3f800000 + :initial-valuef 4833.28 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47700000 - :random-mult #x3f800000 + :initial-valuef 61440.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x46d00000 - :random-mult #x3f800000 + :initial-valuef 26624.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x2204 - :random-mult 1 + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -135,64 +138,67 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 12 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x5c600100) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 252205980000000000.0 + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -979252543 - :random-mult #x3f800000 + :initial-valuef -5177.344 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47700000 - :random-mult #x3f800000 + :initial-valuef 61440.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x46500000 - :random-mult #x3f800000 + :initial-valuef 13312.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x2204 - :random-mult 1 + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -205,64 +211,67 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 12 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x5c600200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef 252210380000000000.0 + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -971056873 - :random-mult #x3f800000 + :initial-valuef -10166.272 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47700000 - :random-mult #x3f800000 + :initial-valuef 61440.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x45d00000 - :random-mult #x3f800000 + :initial-valuef 6656.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value -1 - :random-mult 1 + :initial-valuef (the-as float #xffffffff) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x2204 - :random-mult 1 + :initial-valuef (the-as float #x2204) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -366,9 +375,18 @@ (nonzero? s3-0) (type-type? (-> s3-0 type) sparticle-launch-group) ) - (set! (-> *part-id-table* 2966 init-specs 0 initial-value) arg1) - (set! (-> *part-id-table* 2967 init-specs 0 initial-value) arg2) - (set! (-> *part-id-table* 2968 init-specs 0 initial-value) arg3) + (set! + (-> *part-id-table* 2966 init-specs 0 initial-valuef) + (the-as float arg1) + ) + (set! + (-> *part-id-table* 2967 init-specs 0 initial-valuef) + (the-as float arg2) + ) + (set! + (-> *part-id-table* 2968 init-specs 0 initial-valuef) + (the-as float arg3) + ) (set! (-> self part 0) (create-launch-control (the-as sparticle-launch-group s3-0) self) @@ -416,7 +434,3 @@ (-> sv-16 ppointer) ) ) - - - - diff --git a/test/decompiler/reference/levels/common/water-anim_REF.gc b/test/decompiler/reference/levels/common/water-anim_REF.gc index 5285d2db8a..989970c394 100644 --- a/test/decompiler/reference/levels/common/water-anim_REF.gc +++ b/test/decompiler/reference/levels/common/water-anim_REF.gc @@ -1885,7 +1885,7 @@ ) ;; definition for method 22 of type water-anim -;; INFO: Return type mismatch int vs ripple-wave-set. +;; INFO: Return type mismatch none vs ripple-wave-set. (defmethod TODO-RENAME-22 water-anim ((obj water-anim)) (let ((s5-0 (-> obj look))) (if (or (< s5-0 0) (>= s5-0 (-> *water-anim-look* length))) diff --git a/test/decompiler/reference/levels/misty/sidekick-human_REF.gc b/test/decompiler/reference/levels/misty/sidekick-human_REF.gc index ad8f28270b..bd6209222c 100644 --- a/test/decompiler/reference/levels/misty/sidekick-human_REF.gc +++ b/test/decompiler/reference/levels/misty/sidekick-human_REF.gc @@ -84,72 +84,71 @@ (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 #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -970981376 - :random-range #x46a00000 - :random-mult #x3f800000 + :initial-valuef -10240.0 + :random-rangef 20480.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -977272832 - :random-range #x46400000 - :random-mult #x3f800000 + :initial-valuef -6144.0 + :random-rangef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x415a740e - :random-range #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-rangef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x258 - :random-mult 1 + :initial-valuef (the-as float #x258) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 8 - :random-mult 1 + :initial-valuef (the-as float #x8) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3c :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -162,117 +161,120 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value #x45000000 - :random-range #x444ccccd - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 819.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :random-range #x42c00000 - :random-mult #x3f800000 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x18 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x2 - :initial-value -1017482226 - :random-range 1 - :random-mult #x43da740e + :initial-valuef -218.45334 + :random-rangef (the-as float #x1) + :random-multf 436.90668 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1063329782 - :random-mult #x3f800000 + :initial-valuef -4.9648485 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x2 - :initial-value -1034259442 - :random-range 1 - :random-mult #x42da740e + :initial-valuef -54.613335 + :random-rangef (the-as float #x1) + :random-multf 109.22667 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x258 - :random-mult 1 + :initial-valuef (the-as float #x258) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x8c - :random-mult 1 + :initial-valuef (the-as float #x8c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -285,88 +287,95 @@ (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 #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x4499999a - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42000000 - :random-range #x42c00000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1064333800 - :random-mult #x3f800000 + :initial-valuef -4.4860954 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :random-range -1106522267 - :random-mult #x3f800000 + :random-rangef -0.13653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 30 - :random-range #x12b - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-rangef (the-as float #x12b) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #xf0 - :random-mult 1 + :initial-valuef (the-as float #xf0) + :random-multf (the-as float #x1) + ) + (new 'static 'sp-field-init-spec + :field #x33 + :flags #x6 + :initial-valuef (the-as float #xc6) ) - (new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value #xc6) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -378,61 +387,52 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 12 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x203600) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x203600) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -965083136 - :random-mult #x3f800000 + :initial-valuef -16000.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47700000 - :random-mult #x3f800000 + :initial-valuef 61440.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x47400000 - :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 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 49152.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x13 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 5 - :random-mult 1 + :initial-valuef (the-as float #x5) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -445,124 +445,123 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3e99999a - :random-mult #x3f800000 + :initial-valuef 0.3 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -964689920 - :random-range #x47000000 - :random-mult #x3f800000 + :initial-valuef -16384.0 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -968884224 - :random-range #x46c00000 - :random-mult #x3f800000 + :initial-valuef -12288.0 + :random-rangef 24576.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :random-range #x465ac000 - :random-mult #x3f800000 + :random-rangef 14000.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46c00000 - :random-range #x47000000 - :random-mult #x3f800000 + :initial-valuef 24576.0 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x46c00000 - :random-range #x47000000 - :random-mult #x3f800000 + :initial-valuef 24576.0 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x41800000 - :random-range #x42a00000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 80.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x41800000 - :random-mult #x3f800000 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x41800000 - :random-range #x43160000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 150.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1059425266 - :random-range #x415a740e - :random-mult #x3f800000 + :initial-valuef -6.826667 + :random-rangef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1051036658 - :random-range #x41da740e - :random-mult #x3f800000 + :initial-valuef -13.653334 + :random-rangef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3e5a740e - :random-mult #x3f800000 + :initial-valuef 0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #x96 - :random-range #x95 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-rangef (the-as float #x95) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #xa6c + :initial-valuef (the-as float #xa6c) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -575,21 +574,17 @@ (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 #x24 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #x12c - :random-range #x12b - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-rangef (the-as float #x12b) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #xa6d + :initial-valuef (the-as float #xa6d) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -605,8 +600,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1101368306 - :random-mult #x3f800000 + :initial-valuef -0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1679,104 +1674,103 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f000000 - :random-mult #x3f800000 + :initial-valuef 0.5 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x43cccccd - :random-mult #x3f800000 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -981467136 - :random-range #x46800000 - :random-mult #x3f800000 + :initial-valuef -4096.0 + :random-rangef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (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 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x258 - :random-mult 1 + :initial-valuef (the-as float #x258) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4000 - :random-mult 1 + :initial-valuef (the-as float #x4000) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1792,8 +1786,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1101368306 - :random-mult #x3f800000 + :initial-valuef -0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1806,120 +1800,119 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f000000 - :random-mult #x3f800000 + :initial-valuef 0.5 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x43cccccd - :random-mult #x3f800000 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -981467136 - :random-range #x46800000 - :random-mult #x3f800000 + :initial-valuef -4096.0 + :random-rangef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (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 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3e5a740e - :random-mult #x3f800000 + :initial-valuef 0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x258 - :random-mult 1 + :initial-valuef (the-as float #x258) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x931 + :initial-valuef (the-as float #x931) ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1932,119 +1925,118 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f000000 - :random-mult #x3f800000 + :initial-valuef 0.5 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x4499999a - :random-mult #x3f800000 + :random-rangef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range #x46000000 - :random-mult #x3f800000 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (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 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3e5a740e - :random-mult #x3f800000 + :initial-valuef 0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x258 - :random-mult 1 + :initial-valuef (the-as float #x258) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x931 + :initial-valuef (the-as float #x931) ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2057,120 +2049,119 @@ (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 #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f000000 - :random-mult #x3f800000 + :initial-valuef 0.5 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x45000000 - :random-mult #x3f800000 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -989855744 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef -2048.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (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 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x415a740e - :random-mult #x3f800000 + :initial-valuef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3e5a740e - :random-mult #x3f800000 + :initial-valuef 0.21333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x258 - :random-mult 1 + :initial-valuef (the-as float #x258) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x931 + :initial-valuef (the-as float #x931) ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2183,140 +2174,139 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 24 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value #x46a00000 - :random-range #x45c00000 - :random-mult #x3f800000 + :initial-valuef 20480.0 + :random-rangef 6144.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x434ccccd - :random-range #x434ccccd - :random-mult #x3f800000 + :initial-valuef 204.8 + :random-rangef 204.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x18 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :initial-value -1013468122 - :random-range #x4417b426 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x1a - :flags #x1 - :random-mult #x3f800000 + :initial-valuef -303.4074 + :random-rangef 606.8148 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x1a :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1b :flags #x1 - :initial-value -1032469873 - :random-mult #x3f800000 + :initial-valuef -61.44 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x4003126f - :random-mult #x3f800000 + :initial-valuef 2.048 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1027461563 - :random-range #x43422e45 - :random-mult #x3f800000 + :initial-valuef -97.09037 + :random-rangef 194.18074 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x408c - :random-mult 1 + :initial-valuef (the-as float #x408c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #x10e - :random-mult 1 + :initial-valuef (the-as float #x10e) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x932 + :initial-valuef (the-as float #x932) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2332,8 +2322,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1068708659 - :random-mult #x3f800000 + :initial-valuef -3.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2346,149 +2336,152 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 25 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45800000 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-range #x444ccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-rangef 819.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :random-range #x445a740e - :random-mult #x3f800000 + :random-rangef 873.81335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1070677186 - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1087454402 - :random-range -1067813874 - :random-mult #x3f800000 + :initial-valuef -0.68266666 + :random-rangef -3.4133334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f4ccccd - :random-range #x3d4ccccd - :random-mult #x3f800000 + :initial-valuef 0.8 + :random-rangef 0.05 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4005 - :random-mult 1 + :initial-valuef (the-as float #x4005) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 30 - :random-range #x2ed - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-rangef (the-as float #x2ed) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x933 + :initial-valuef (the-as float #x933) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3c :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x46000000 - :random-mult #x3f800000 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2501,16 +2494,8 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 3 - (new 'static 'sp-field-init-spec - :field #x22 - :flags #x1 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x24 - :flags #x1 - :random-mult #x3f800000 - ) + (new 'static 'sp-field-init-spec :field #x22 :flags #x1 :random-multf 1.0) + (new 'static 'sp-field-init-spec :field #x24 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x43) ) ) @@ -2522,149 +2507,152 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 25 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :random-range #x46400000 - :random-mult #x3f800000 + :random-rangef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-range #x44cccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-rangef 1638.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :random-range #x42da740e - :random-mult #x3f800000 + :random-rangef 109.22667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1070677186 - :random-mult #x3f800000 + :initial-valuef -2.7306666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1087454402 - :random-range -1067813874 - :random-mult #x3f800000 + :initial-valuef -0.68266666 + :random-rangef -3.4133334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f400000 - :random-range #x3d4ccccd - :random-mult #x3f800000 + :initial-valuef 0.75 + :random-rangef 0.05 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x5dc - :random-mult 1 + :initial-valuef (the-as float #x5dc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4005 - :random-mult 1 + :initial-valuef (the-as float #x4005) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 30 - :random-range #x2ed - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-rangef (the-as float #x2ed) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x933 + :initial-valuef (the-as float #x933) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3c :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x45000000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3f :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2677,80 +2665,83 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 14 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x46000000 - :random-mult #x3f800000 + :initial-valuef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47e00000 - :random-range #x46800000 - :random-mult #x3f800000 + :initial-valuef 114688.0 + :random-rangef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1072369143 - :random-mult #x3f800000 + :initial-valuef -2.3272727 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1072369143 - :random-mult #x3f800000 + :initial-valuef -2.3272727 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 5 - :random-mult 1 + :initial-valuef (the-as float #x5) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -2763,98 +2754,101 @@ (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 #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40000000 - :random-mult #x3f800000 + :initial-valuef 2.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45000000 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x44800000 - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 1024.0 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x47800000 - :random-mult #x3f800000 + :initial-valuef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x437f0000 - :random-mult #x3f800000 + :initial-valuef 255.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x1 - :initial-value #x4519999a - :random-mult #x3f800000 + :initial-valuef 2457.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value -1073182583 - :random-mult #x3f800000 + :initial-valuef -2.1333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1073182583 - :random-mult #x3f800000 + :initial-valuef -2.1333334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1081571191 - :random-mult #x3f800000 + :initial-valuef -1.0666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 60 - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3210,60 +3204,59 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 11 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x44800000 - :random-range #x45c00000 - :random-mult #x3f800000 + :initial-valuef 1024.0 + :random-rangef 6144.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x444ccccd - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x43000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 128.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1073540497 - :random-mult #x3f800000 + :initial-valuef -2.048 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4000 - :random-mult 1 + :initial-valuef (the-as float #x4000) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3276,144 +3269,135 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 25 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #xb - :flags #x1 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #xb :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value #x44800000 - :random-range #x44800000 - :random-mult #x3f800000 + :initial-valuef 1024.0 + :random-rangef 1024.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x434ccccd - :random-range #x42cccccd - :random-mult #x3f800000 + :initial-valuef 204.8 + :random-rangef 102.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (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 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x18 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :initial-value -1019868320 - :random-range #x43b60b60 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x1a - :flags #x1 - :random-mult #x3f800000 + :initial-valuef -182.04443 + :random-rangef 364.08887 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x1a :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1b :flags #x1 - :initial-value #x41360b61 - :random-mult #x3f800000 + :initial-valuef 11.377778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x3f91a2b4 - :random-mult #x3f800000 + :initial-valuef 1.1377778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1027461563 - :random-range #x43422e45 - :random-mult #x3f800000 + :initial-valuef -97.09037 + :random-rangef 194.18074 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x40888889 - :random-mult #x3f800000 + :initial-valuef 4.266667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x408c - :random-mult 1 + :initial-valuef (the-as float #x408c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 30 - :random-range 14 - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-rangef (the-as float #xe) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x954 + :initial-valuef (the-as float #x954) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3426,20 +3410,16 @@ (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 #x24 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x32 - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #x955 + :initial-valuef (the-as float #x955) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3455,26 +3435,26 @@ (new 'static 'sp-field-init-spec :field #x1b :flags #x1 - :initial-value -1039628151 - :random-mult #x3f800000 + :initial-valuef -34.133335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1076202482 - :random-mult #x3f800000 + :initial-valuef -1.7066667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1081571191 - :random-mult #x3f800000 + :initial-valuef -1.0666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3487,99 +3467,102 @@ (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 #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3dcccccd - :random-mult #x3f800000 + :initial-valuef 0.1 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x44cccccd - :random-range #x444ccccd - :random-mult #x3f800000 + :initial-valuef 1638.4 + :random-rangef 819.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42800000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1024081265 - :random-mult #x3f800000 + :initial-valuef -122.88 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1027461563 - :random-range #x43422e45 - :random-mult #x3f800000 + :initial-valuef -97.09037 + :random-rangef 194.18074 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1063675494 - :random-mult #x3f800000 + :initial-valuef -4.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 15 - :random-mult 1 + :initial-valuef (the-as float #xf) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -3609,103 +3592,90 @@ (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 #x200000) (new 'static 'sp-field-init-spec - :field #x6 - :flags #x1 - :random-mult #x3f800000 + :field #x1 + :initial-valuef (the-as float #x200000) ) + (new 'static 'sp-field-init-spec :field #x6 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -998244352 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef -1024.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -998244352 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef -1024.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -998244352 - :random-range #x45000000 - :random-mult #x3f800000 + :initial-valuef -1024.0 + :random-rangef 2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x45800000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 4096.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (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 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) + (new 'static 'sp-field-init-spec :field #x12 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x14 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 32.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x14 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x1a - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x1a :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1017482226 - :random-range #x43da740e - :random-mult #x3f800000 + :initial-valuef -218.45334 + :random-rangef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1092979698 - :random-mult #x3f800000 + :initial-valuef -0.42666668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x96 - :random-mult 1 + :initial-valuef (the-as float #x96) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4113,91 +4083,90 @@ (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 #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xa :flags #x1 - :initial-value -973078528 - :random-range #x46800000 - :random-mult #x3f800000 + :initial-valuef -8192.0 + :random-rangef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value #x45800000 - :random-range #x46000000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 8192.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xc :flags #x1 - :initial-value -973078528 - :random-range #x46800000 - :random-mult #x3f800000 + :initial-valuef -8192.0 + :random-rangef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x435a740e - :random-range #x42da740e - :random-mult #x3f800000 + :initial-valuef 218.45334 + :random-rangef 109.22667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1079065794 - :random-mult #x3f800000 + :initial-valuef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f70a3d7 - :random-mult #x3f800000 + :initial-valuef 0.94 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #xf0 - :random-mult 1 + :initial-valuef (the-as float #xf0) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 8 - :random-mult 1 + :initial-valuef (the-as float #x8) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x46c71c72 - :random-mult #x3f800000 + :random-rangef 25486.223 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4210,131 +4179,134 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 22 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -977272832 - :random-range #x46400000 - :random-mult #x3f800000 + :initial-valuef -6144.0 + :random-rangef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x44cccccd - :random-range #x454ccccd - :random-mult #x3f800000 + :initial-valuef 1638.4 + :random-rangef 3276.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42c00000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x4323d70a - :random-range #x4423d70a - :random-mult #x3f800000 + :initial-valuef 163.84 + :random-rangef 655.36 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1053899970 - :random-mult #x3f800000 + :initial-valuef -10.922667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1087454402 - :random-range -1087454402 - :random-mult #x3f800000 + :initial-valuef -0.68266666 + :random-rangef -0.68266666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f666666 - :random-mult #x3f800000 + :initial-valuef 0.9 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 30 - :random-range 89 - :random-mult 1 + :initial-valuef (the-as float #x1e) + :random-rangef (the-as float #x59) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #xae5 + :initial-valuef (the-as float #xae5) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x46aaaaab - :random-mult #x3f800000 + :random-rangef 21845.334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x46000000 - :random-range #x46800000 - :random-mult #x3f800000 + :initial-valuef 8192.0 + :random-rangef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4350,8 +4322,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1081571191 - :random-mult #x3f800000 + :initial-valuef -1.0666667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4364,79 +4336,82 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 14 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41400000 - :random-mult #x3f800000 + :initial-valuef 12.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4499999a - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x1 - :initial-value #x47400000 - :random-mult #x3f800000 + :initial-valuef 49152.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x1 - :initial-value #x45851eb8 - :random-mult #x3f800000 + :initial-valuef 4259.84 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1077097267 - :random-mult #x3f800000 + :initial-valuef -1.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 60 - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4449,66 +4424,69 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 12 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x47c00000 - :random-mult #x3f800000 + :initial-valuef 98304.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43400000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 192.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1072369143 - :random-mult #x3f800000 + :initial-valuef -2.3272727 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 54 - :random-mult 1 + :initial-valuef (the-as float #x36) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x400c - :random-mult 1 + :initial-valuef (the-as float #x400c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4521,137 +4499,140 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 23 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x41800000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -977272832 - :random-range #x46400000 - :random-mult #x3f800000 + :initial-valuef -6144.0 + :random-rangef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x46400000 - :random-range #x45c00000 - :random-mult #x3f800000 + :initial-valuef 12288.0 + :random-rangef 6144.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :random-range #x42c00000 - :random-mult #x3f800000 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x43a3d70a - :random-range #x4323d70a - :random-mult #x3f800000 + :initial-valuef 327.68 + :random-rangef 163.84 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x42a3d70a - :random-mult #x3f800000 + :initial-valuef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1025870834 - :random-range #x435a740e - :random-mult #x3f800000 + :initial-valuef -109.22667 + :random-rangef 218.45334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1097751884 - :random-mult #x3f800000 + :initial-valuef -0.28444445 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value #x3f2ec33e - :random-range #x3f2ec33e - :random-mult #x3f800000 + :initial-valuef 0.68266666 + :random-rangef 0.68266666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f4ccccd - :random-mult #x3f800000 + :initial-valuef 0.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x1fe - :random-mult 1 + :initial-valuef (the-as float #x1fe) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x4004 - :random-mult 1 + :initial-valuef (the-as float #x4004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x46aaaaab - :random-mult #x3f800000 + :random-rangef 21845.334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x46800000 - :random-mult #x3f800000 + :random-rangef 16384.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -4897,144 +4878,143 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 24 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-range #x42000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #x15 - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 32.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #x15 :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x42888889 - :random-range #x415a740e - :random-mult #x3f800000 + :initial-valuef 68.26667 + :random-rangef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x41da740e - :random-mult #x3f800000 + :initial-valuef 27.306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1017482226 - :random-range #x43da740e - :random-mult #x3f800000 + :initial-valuef -218.45334 + :random-rangef 436.90668 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value #x3ecccccd - :random-mult #x3f800000 + :initial-valuef 0.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value #x3faec33e - :random-range -1079065794 - :random-mult #x3f800000 + :initial-valuef 1.3653333 + :random-rangef -1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f6b851f - :random-mult #x3f800000 + :initial-valuef 0.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x32 - :initial-value 15 - :random-range 44 - :random-mult 1 + :initial-valuef (the-as float #xf) + :random-rangef (the-as float #x2c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x33 :flags #x6 - :initial-value #xb06 + :initial-valuef (the-as float #xb06) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x46a0b60b - :random-range #x43b60b61 - :random-mult #x3f800000 + :initial-valuef 20571.021 + :random-rangef 364.0889 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :initial-value -988923676 - :random-range #x452aaaab - :random-mult #x3f800000 + :initial-valuef -2275.5557 + :random-rangef 2730.6667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :initial-value #x4499999a - :random-range -989855744 - :random-mult #x3f800000 + :initial-valuef 1228.8 + :random-rangef -2048.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -5050,8 +5030,8 @@ (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1110651699 - :random-mult #x3f800000 + :initial-valuef -0.1 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -6802,7 +6782,3 @@ (dummy-42 obj) (none) ) - - - - diff --git a/test/decompiler/reference/levels/village1/assistant_REF.gc b/test/decompiler/reference/levels/village1/assistant_REF.gc index 0560e8e4a2..75e5308d57 100644 --- a/test/decompiler/reference/levels/village1/assistant_REF.gc +++ b/test/decompiler/reference/levels/village1/assistant_REF.gc @@ -901,74 +901,77 @@ (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 #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3dcccccd - :random-range #x3f800000 - :random-mult #x3f800000 + :initial-valuef 0.1 + :random-rangef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45800000 - :random-range #x46400000 - :random-mult #x3f800000 + :initial-valuef 4096.0 + :random-rangef 12288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x42c80000 - :random-range #x41e00000 - :random-mult #x3f800000 + :initial-valuef 100.0 + :random-rangef 28.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c80000 - :random-mult #x3f800000 + :initial-valuef 100.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42a00000 - :random-mult #x3f800000 + :initial-valuef 80.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1060320051 - :random-mult #x3f800000 + :initial-valuef -6.4 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 10 - :random-mult 1 + :initial-valuef (the-as float #xa) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -981,129 +984,132 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 22 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3dcccccd - :random-range #x3f800000 - :random-mult #x3f800000 + :initial-valuef 0.1 + :random-rangef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x43cccccd - :random-range #x43cccccd - :random-mult #x3f800000 + :initial-valuef 409.6 + :random-rangef 409.6 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42c00000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x425a740e - :random-range #x43a3d70a - :random-mult #x3f800000 + :initial-valuef 54.613335 + :random-rangef 327.68 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1087454402 - :random-mult #x3f800000 + :initial-valuef -0.68266666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1102263091 - :random-mult #x3f800000 + :initial-valuef -0.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value -1102263091 - :random-mult #x3f800000 + :initial-valuef -0.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1056763281 - :random-mult #x3f800000 + :initial-valuef -8.192 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2d :flags #x1 - :initial-value #x3f6e147b - :random-mult #x3f800000 + :initial-valuef 0.93 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x4b0 - :random-mult 1 + :initial-valuef (the-as float #x4b0) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 4 - :random-mult 1 + :initial-valuef (the-as float #x4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x30 :flags #x1 - :initial-value #x48090000 - :random-mult #x3f800000 + :initial-valuef 140288.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x31 :flags #x5 - :func 'check-drop-level-assistant + :sym 'check-drop-level-assistant ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47000000 - :random-mult #x3f800000 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :initial-value #x46000000 - :random-range #x47000000 - :random-mult #x3f800000 + :initial-valuef 8192.0 + :random-rangef 32768.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1116,88 +1122,91 @@ (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 #x200f00) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40400000 - :random-range #x3f800000 - :random-mult #x3f800000 + :initial-valuef 3.0 + :random-rangef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4399999a - :random-range #x4399999a - :random-mult #x3f800000 + :initial-valuef 307.2 + :random-rangef 307.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42c00000 - :random-mult #x3f800000 + :initial-valuef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42c00000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 96.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :initial-value #x423f258c - :random-range #x415a740e - :random-mult #x3f800000 + :initial-valuef 47.786667 + :random-rangef 13.653334 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1084591090 - :random-mult #x3f800000 + :initial-valuef -0.85333335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value -1087454402 - :random-mult #x3f800000 + :initial-valuef -0.68266666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x12c - :random-mult 1 + :initial-valuef (the-as float #x12c) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 4 - :random-mult 1 + :initial-valuef (the-as float #x4) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :initial-value #x460e38e4 - :random-range #x45aaaaab - :random-mult #x3f800000 + :initial-valuef 9102.223 + :random-rangef 5461.3335 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1262,7 +1271,3 @@ ) (none) ) - - - - diff --git a/test/decompiler/reference/levels/village3/miners_REF.gc b/test/decompiler/reference/levels/village3/miners_REF.gc index 9343963645..3bf533ef50 100644 --- a/test/decompiler/reference/levels/village3/miners_REF.gc +++ b/test/decompiler/reference/levels/village3/miners_REF.gc @@ -228,150 +228,149 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 25 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x200000) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x200000) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-range #x40000000 - :random-mult #x3f800000 - ) - (new 'static 'sp-field-init-spec - :field #xb - :flags #x1 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-rangef 2.0 + :random-multf 1.0 ) + (new 'static 'sp-field-init-spec :field #xb :flags #x1 :random-multf 1.0) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x4399999a - :random-range #x4399999a - :random-mult #x3f800000 + :initial-valuef 307.2 + :random-rangef 307.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x43000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :initial-value #x43000000 - :random-range #x41800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 16.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1a :flags #x1 - :random-range #x3faec33e - :random-mult #x3f800000 + :random-rangef 1.3653333 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value #x4003126f - :random-range #x4083126f - :random-mult #x3f800000 + :initial-valuef 2.048 + :random-rangef 4.096 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1f :flags #x1 - :initial-value -1039031628 - :random-range #x4291a2b4 - :random-mult #x3f800000 + :initial-valuef -36.40889 + :random-rangef 72.81778 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x21 :flags #x1 - :initial-value -1096283519 - :random-mult #x3f800000 + :initial-valuef -0.32820514 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1096283519 - :random-mult #x3f800000 + :initial-valuef -0.32820514 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x23 :flags #x1 - :initial-value -1096283519 - :random-mult #x3f800000 + :initial-valuef -0.32820514 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1104672127 - :random-mult #x3f800000 + :initial-valuef -0.16410257 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value #x3e0bcf65 - :random-range #x3e8bcf65 - :random-mult #x3f800000 + :initial-valuef 0.13653333 + :random-rangef 0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value #x186 - :random-mult 1 + :initial-valuef (the-as float #x186) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value #x5004 - :random-mult 1 + :initial-valuef (the-as float #x5004) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x3a :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3b :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x3e :flags #x1 - :random-range #x434ccccd - :random-mult #x3f800000 + :random-rangef 204.8 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -384,107 +383,110 @@ (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 #x1 + :initial-valuef (the-as float #x200f00) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x40400000 - :random-mult #x3f800000 + :initial-valuef 3.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1012672758 - :random-range #x42a3d70a - :random-mult #x3f800000 + :initial-valuef -327.68 + :random-rangef 81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x444ccccd - :random-range #x444ccccd - :random-mult #x3f800000 + :initial-valuef 819.2 + :random-rangef 819.2 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x42000000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 32.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :random-range #x3f2ec33e - :random-mult #x3f800000 + :random-rangef 0.68266666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1b :flags #x1 - :random-range #x3f2ec33e - :random-mult #x3f800000 + :random-rangef 0.68266666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1059425266 - :random-mult #x3f800000 + :initial-valuef -6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1086977183 - :random-mult #x3f800000 + :initial-valuef -0.7111111 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value #x3f8bcf65 - :random-range #x3e8bcf65 - :random-mult #x3f800000 + :initial-valuef 1.0922667 + :random-rangef 0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 60 - :random-range 29 - :random-mult 1 + :initial-valuef (the-as float #x3c) + :random-rangef (the-as float #x1d) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 8 - :random-mult 1 + :initial-valuef (the-as float #x8) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -497,117 +499,120 @@ (new 'static 'sparticle-launcher :init-specs (new 'static 'inline-array sp-field-init-spec 20 - (new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200) + (new 'static 'sp-field-init-spec + :field #x1 + :initial-valuef (the-as float #x201200) + ) (new 'static 'sp-field-init-spec :field #x6 :flags #x1 - :initial-value #x3f800000 - :random-mult #x3f800000 + :initial-valuef 1.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xb :flags #x1 - :initial-value -1029449974 - :random-mult #x3f800000 + :initial-valuef -81.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #xd :flags #x1 - :initial-value #x45000000 - :random-range #x45400000 - :random-mult #x3f800000 + :initial-valuef 2048.0 + :random-rangef 3072.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x10 :flags #x1 - :random-range #x47800000 - :random-mult #x3f800000 + :random-rangef 65536.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x11 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x12 :flags #x1 - :initial-value #x43000000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 128.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x13 :flags #x1 - :initial-value #x42800000 - :random-range #x42800000 - :random-mult #x3f800000 + :initial-valuef 64.0 + :random-rangef 64.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x14 :flags #x1 - :random-range #x42000000 - :random-mult #x3f800000 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x15 :flags #x1 - :initial-value #x41800000 - :random-range #x42000000 - :random-mult #x3f800000 + :initial-valuef 16.0 + :random-rangef 32.0 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x19 :flags #x1 - :random-range #x3f2ec33e - :random-mult #x3f800000 + :random-rangef 0.68266666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1b :flags #x1 - :random-range #x3f2ec33e - :random-mult #x3f800000 + :random-rangef 0.68266666 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x1c :flags #x1 - :initial-value -1059425266 - :random-mult #x3f800000 + :initial-valuef -6.826667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x20 :flags #x3 - :initial-value -4 - :random-mult 1 + :initial-valuef (the-as float #xfffffffc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x22 :flags #x1 - :initial-value -1086977183 - :random-mult #x3f800000 + :initial-valuef -0.7111111 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x24 :flags #x1 - :initial-value -1074412913 - :random-mult #x3f800000 + :initial-valuef -1.92 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x26 :flags #x1 - :initial-value #x3f8bcf65 - :random-range #x3e8bcf65 - :random-mult #x3f800000 + :initial-valuef 1.0922667 + :random-rangef 0.27306667 + :random-multf 1.0 ) (new 'static 'sp-field-init-spec :field #x2e - :initial-value 20 - :random-mult 1 + :initial-valuef (the-as float #x14) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x2f - :initial-value 12 - :random-mult 1 + :initial-valuef (the-as float #xc) + :random-multf (the-as float #x1) ) (new 'static 'sp-field-init-spec :field #x43) ) @@ -1343,7 +1348,3 @@ (go (method-of-object obj idle)) (none) ) - - - -