redscript-mc 2.4.1 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/README.md +2 -0
- package/dist/data/mathdemo/function/__load.mcfunction +2 -0
- package/dist/data/mathdemo/function/_atan_init.mcfunction +4 -0
- package/dist/data/mathdemo/function/_math_init.mcfunction +4 -0
- package/dist/data/mathdemo/function/add2d_x.mcfunction +5 -0
- package/dist/data/mathdemo/function/add2d_y.mcfunction +5 -0
- package/dist/data/mathdemo/function/add3d_x.mcfunction +5 -0
- package/dist/data/mathdemo/function/add3d_y.mcfunction +5 -0
- package/dist/data/mathdemo/function/add3d_z.mcfunction +5 -0
- package/dist/data/mathdemo/function/air_drag_fx.mcfunction +2 -0
- package/dist/data/mathdemo/function/apply_drag.mcfunction +8 -0
- package/dist/data/mathdemo/function/apply_gravity.mcfunction +6 -0
- package/dist/data/mathdemo/function/approx_eq.mcfunction +10 -0
- package/dist/data/mathdemo/function/approx_eq__merge_1.mcfunction +3 -0
- package/dist/data/mathdemo/function/approx_eq__merge_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/approx_eq__then_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/approx_eq__then_2.mcfunction +2 -0
- package/dist/data/mathdemo/function/atan2_fixed.mcfunction +6 -0
- package/dist/data/mathdemo/function/atan2_fixed__else_30.mcfunction +2 -0
- package/dist/data/mathdemo/function/atan2_fixed__loop_body_26.mcfunction +21 -0
- package/dist/data/mathdemo/function/atan2_fixed__loop_exit_27.mcfunction +5 -0
- package/dist/data/mathdemo/function/atan2_fixed__loop_header_25.mcfunction +3 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_10.mcfunction +5 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_12.mcfunction +2 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_16.mcfunction +5 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_18.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_20.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_22.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_24.mcfunction +3 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_29.mcfunction +1 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_3.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_32.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_34.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_36.mcfunction +3 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_40.mcfunction +3 -0
- package/dist/data/mathdemo/function/atan2_fixed__merge_6.mcfunction +2 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_11.mcfunction +2 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_15.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_17.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_19.mcfunction +2 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_2.mcfunction +2 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_21.mcfunction +2 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_23.mcfunction +5 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_28.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_31.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_33.mcfunction +4 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_35.mcfunction +1 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_39.mcfunction +3 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_5.mcfunction +2 -0
- package/dist/data/mathdemo/function/atan2_fixed__then_9.mcfunction +4 -0
- package/dist/data/mathdemo/function/bounce_v.mcfunction +10 -0
- package/dist/data/mathdemo/function/cbrt_fx.mcfunction +5 -0
- package/dist/data/mathdemo/function/cbrt_fx__loop_body_6.mcfunction +7 -0
- package/dist/data/mathdemo/function/cbrt_fx__loop_exit_7.mcfunction +1 -0
- package/dist/data/mathdemo/function/cbrt_fx__loop_header_5.mcfunction +4 -0
- package/dist/data/mathdemo/function/cbrt_fx__merge_1.mcfunction +8 -0
- package/dist/data/mathdemo/function/cbrt_fx__merge_11.mcfunction +5 -0
- package/dist/data/mathdemo/function/cbrt_fx__merge_13.mcfunction +4 -0
- package/dist/data/mathdemo/function/cbrt_fx__merge_4.mcfunction +2 -0
- package/dist/data/mathdemo/function/cbrt_fx__merge_9.mcfunction +13 -0
- package/dist/data/mathdemo/function/cbrt_fx__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/cbrt_fx__then_10.mcfunction +2 -0
- package/dist/data/mathdemo/function/cbrt_fx__then_12.mcfunction +2 -0
- package/dist/data/mathdemo/function/cbrt_fx__then_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/cbrt_fx__then_8.mcfunction +2 -0
- package/dist/data/mathdemo/function/ceil_div.mcfunction +9 -0
- package/dist/data/mathdemo/function/chebyshev.mcfunction +14 -0
- package/dist/data/mathdemo/function/chebyshev3d.mcfunction +19 -0
- package/dist/data/mathdemo/function/chebyshev3d__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/chebyshev3d__merge_3.mcfunction +4 -0
- package/dist/data/mathdemo/function/chebyshev3d__merge_5.mcfunction +4 -0
- package/dist/data/mathdemo/function/chebyshev3d__merge_7.mcfunction +3 -0
- package/dist/data/mathdemo/function/chebyshev3d__merge_9.mcfunction +1 -0
- package/dist/data/mathdemo/function/chebyshev3d__then_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/chebyshev3d__then_2.mcfunction +4 -0
- package/dist/data/mathdemo/function/chebyshev3d__then_4.mcfunction +4 -0
- package/dist/data/mathdemo/function/chebyshev3d__then_6.mcfunction +2 -0
- package/dist/data/mathdemo/function/chebyshev3d__then_8.mcfunction +2 -0
- package/dist/data/mathdemo/function/chebyshev__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/chebyshev__merge_3.mcfunction +3 -0
- package/dist/data/mathdemo/function/chebyshev__merge_5.mcfunction +1 -0
- package/dist/data/mathdemo/function/chebyshev__then_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/chebyshev__then_2.mcfunction +4 -0
- package/dist/data/mathdemo/function/chebyshev__then_4.mcfunction +1 -0
- package/dist/data/mathdemo/function/circular_x.mcfunction +14 -0
- package/dist/data/mathdemo/function/circular_z.mcfunction +14 -0
- package/dist/data/mathdemo/function/clamp_velocity.mcfunction +5 -0
- package/dist/data/mathdemo/function/clamp_velocity__merge_1.mcfunction +5 -0
- package/dist/data/mathdemo/function/clamp_velocity__merge_4.mcfunction +1 -0
- package/dist/data/mathdemo/function/clamp_velocity__then_0.mcfunction +1 -0
- package/dist/data/mathdemo/function/clamp_velocity__then_3.mcfunction +3 -0
- package/dist/data/mathdemo/function/combinations.mcfunction +6 -0
- package/dist/data/mathdemo/function/combinations__loop_body_9.mcfunction +15 -0
- package/dist/data/mathdemo/function/combinations__loop_exit_10.mcfunction +1 -0
- package/dist/data/mathdemo/function/combinations__loop_header_8.mcfunction +3 -0
- package/dist/data/mathdemo/function/combinations__merge_1.mcfunction +3 -0
- package/dist/data/mathdemo/function/combinations__merge_4.mcfunction +6 -0
- package/dist/data/mathdemo/function/combinations__merge_7.mcfunction +3 -0
- package/dist/data/mathdemo/function/combinations__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/combinations__then_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/combinations__then_6.mcfunction +4 -0
- package/dist/data/mathdemo/function/cos_fixed.mcfunction +7 -0
- package/dist/data/mathdemo/function/cross2d.mcfunction +11 -0
- package/dist/data/mathdemo/function/cross3d_x.mcfunction +11 -0
- package/dist/data/mathdemo/function/cross3d_y.mcfunction +11 -0
- package/dist/data/mathdemo/function/cross3d_z.mcfunction +11 -0
- package/dist/data/mathdemo/function/demo_easing.mcfunction +12 -0
- package/dist/data/mathdemo/function/demo_math.mcfunction +16 -0
- package/dist/data/mathdemo/function/demo_noise.mcfunction +14 -0
- package/dist/data/mathdemo/function/demo_physics.mcfunction +11 -0
- package/dist/data/mathdemo/function/demo_physics__loop_body_1.mcfunction +9 -0
- package/dist/data/mathdemo/function/demo_physics__loop_body_4.mcfunction +18 -0
- package/dist/data/mathdemo/function/demo_physics__loop_exit_2.mcfunction +6 -0
- package/dist/data/mathdemo/function/demo_physics__loop_exit_5.mcfunction +1 -0
- package/dist/data/mathdemo/function/demo_physics__loop_header_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/demo_physics__loop_header_3.mcfunction +4 -0
- package/dist/data/mathdemo/function/distance2d_fixed.mcfunction +13 -0
- package/dist/data/mathdemo/function/distance3d_fixed.mcfunction +18 -0
- package/dist/data/mathdemo/function/divfix.mcfunction +6 -0
- package/dist/data/mathdemo/function/divfix__merge_1.mcfunction +6 -0
- package/dist/data/mathdemo/function/divfix__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/dot2d.mcfunction +11 -0
- package/dist/data/mathdemo/function/dot3d.mcfunction +17 -0
- package/dist/data/mathdemo/function/ease_in_back.mcfunction +26 -0
- package/dist/data/mathdemo/function/ease_in_bounce.mcfunction +9 -0
- package/dist/data/mathdemo/function/ease_in_cubic.mcfunction +12 -0
- package/dist/data/mathdemo/function/ease_in_expo.mcfunction +5 -0
- package/dist/data/mathdemo/function/ease_in_expo__merge_1.mcfunction +11 -0
- package/dist/data/mathdemo/function/ease_in_expo__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/ease_in_out_back.mcfunction +5 -0
- package/dist/data/mathdemo/function/ease_in_out_back__merge_1.mcfunction +14 -0
- package/dist/data/mathdemo/function/ease_in_out_back__then_0.mcfunction +10 -0
- package/dist/data/mathdemo/function/ease_in_out_bounce.mcfunction +5 -0
- package/dist/data/mathdemo/function/ease_in_out_bounce__merge_1.mcfunction +14 -0
- package/dist/data/mathdemo/function/ease_in_out_bounce__then_0.mcfunction +10 -0
- package/dist/data/mathdemo/function/ease_in_out_cubic.mcfunction +5 -0
- package/dist/data/mathdemo/function/ease_in_out_cubic__merge_1.mcfunction +17 -0
- package/dist/data/mathdemo/function/ease_in_out_cubic__then_0.mcfunction +13 -0
- package/dist/data/mathdemo/function/ease_in_out_quad.mcfunction +5 -0
- package/dist/data/mathdemo/function/ease_in_out_quad__merge_1.mcfunction +12 -0
- package/dist/data/mathdemo/function/ease_in_out_quad__then_0.mcfunction +8 -0
- package/dist/data/mathdemo/function/ease_in_out_sine.mcfunction +5 -0
- package/dist/data/mathdemo/function/ease_in_out_sine__merge_1.mcfunction +14 -0
- package/dist/data/mathdemo/function/ease_in_out_sine__then_0.mcfunction +10 -0
- package/dist/data/mathdemo/function/ease_in_quad.mcfunction +7 -0
- package/dist/data/mathdemo/function/ease_in_quad__const_5000.mcfunction +5 -0
- package/dist/data/mathdemo/function/ease_in_quart.mcfunction +12 -0
- package/dist/data/mathdemo/function/ease_in_sine.mcfunction +30 -0
- package/dist/data/mathdemo/function/ease_linear.mcfunction +2 -0
- package/dist/data/mathdemo/function/ease_linear__const_5000.mcfunction +2 -0
- package/dist/data/mathdemo/function/ease_out_back.mcfunction +9 -0
- package/dist/data/mathdemo/function/ease_out_back__const_5000.mcfunction +7 -0
- package/dist/data/mathdemo/function/ease_out_bounce.mcfunction +6 -0
- package/dist/data/mathdemo/function/ease_out_bounce__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/ease_out_bounce__merge_4.mcfunction +4 -0
- package/dist/data/mathdemo/function/ease_out_bounce__merge_7.mcfunction +15 -0
- package/dist/data/mathdemo/function/ease_out_bounce__then_0.mcfunction +11 -0
- package/dist/data/mathdemo/function/ease_out_bounce__then_3.mcfunction +15 -0
- package/dist/data/mathdemo/function/ease_out_bounce__then_6.mcfunction +15 -0
- package/dist/data/mathdemo/function/ease_out_cubic.mcfunction +16 -0
- package/dist/data/mathdemo/function/ease_out_cubic__const_5000.mcfunction +14 -0
- package/dist/data/mathdemo/function/ease_out_expo.mcfunction +5 -0
- package/dist/data/mathdemo/function/ease_out_expo__merge_1.mcfunction +8 -0
- package/dist/data/mathdemo/function/ease_out_expo__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/ease_out_quad.mcfunction +11 -0
- package/dist/data/mathdemo/function/ease_out_quart.mcfunction +16 -0
- package/dist/data/mathdemo/function/ease_out_sine.mcfunction +9 -0
- package/dist/data/mathdemo/function/ease_smooth.mcfunction +23 -0
- package/dist/data/mathdemo/function/ease_smoother.mcfunction +41 -0
- package/dist/data/mathdemo/function/exp_fx.mcfunction +16 -0
- package/dist/data/mathdemo/function/exp_fx__loop_body_10.mcfunction +8 -0
- package/dist/data/mathdemo/function/exp_fx__loop_body_5.mcfunction +8 -0
- package/dist/data/mathdemo/function/exp_fx__loop_exit_11.mcfunction +1 -0
- package/dist/data/mathdemo/function/exp_fx__loop_exit_6.mcfunction +1 -0
- package/dist/data/mathdemo/function/exp_fx__loop_header_4.mcfunction +3 -0
- package/dist/data/mathdemo/function/exp_fx__loop_header_9.mcfunction +3 -0
- package/dist/data/mathdemo/function/exp_fx__merge_1.mcfunction +47 -0
- package/dist/data/mathdemo/function/exp_fx__merge_3.mcfunction +4 -0
- package/dist/data/mathdemo/function/exp_fx__merge_8.mcfunction +1 -0
- package/dist/data/mathdemo/function/exp_fx__then_0.mcfunction +7 -0
- package/dist/data/mathdemo/function/exp_fx__then_2.mcfunction +2 -0
- package/dist/data/mathdemo/function/exp_fx__then_7.mcfunction +5 -0
- package/dist/data/mathdemo/function/factorial.mcfunction +5 -0
- package/dist/data/mathdemo/function/factorial__loop_body_4.mcfunction +7 -0
- package/dist/data/mathdemo/function/factorial__loop_exit_5.mcfunction +1 -0
- package/dist/data/mathdemo/function/factorial__loop_header_3.mcfunction +3 -0
- package/dist/data/mathdemo/function/factorial__merge_1.mcfunction +3 -0
- package/dist/data/mathdemo/function/factorial__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/fbm_1d.mcfunction +9 -0
- package/dist/data/mathdemo/function/fbm_1d__loop_body_1.mcfunction +33 -0
- package/dist/data/mathdemo/function/fbm_1d__loop_exit_2.mcfunction +4 -0
- package/dist/data/mathdemo/function/fbm_1d__loop_header_0.mcfunction +3 -0
- package/dist/data/mathdemo/function/fbm_1d__merge_4.mcfunction +6 -0
- package/dist/data/mathdemo/function/fbm_1d__then_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/fbm_2d.mcfunction +10 -0
- package/dist/data/mathdemo/function/fbm_2d__loop_body_1.mcfunction +39 -0
- package/dist/data/mathdemo/function/fbm_2d__loop_exit_2.mcfunction +4 -0
- package/dist/data/mathdemo/function/fbm_2d__loop_header_0.mcfunction +3 -0
- package/dist/data/mathdemo/function/fbm_2d__merge_4.mcfunction +6 -0
- package/dist/data/mathdemo/function/fbm_2d__then_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/friction_decel.mcfunction +5 -0
- package/dist/data/mathdemo/function/friction_decel__merge_1.mcfunction +5 -0
- package/dist/data/mathdemo/function/friction_decel__merge_4.mcfunction +2 -0
- package/dist/data/mathdemo/function/friction_decel__then_0.mcfunction +3 -0
- package/dist/data/mathdemo/function/friction_decel__then_3.mcfunction +3 -0
- package/dist/data/mathdemo/function/gamma_int.mcfunction +5 -0
- package/dist/data/mathdemo/function/gamma_int__merge_1.mcfunction +6 -0
- package/dist/data/mathdemo/function/gamma_int__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/gcd.mcfunction +7 -0
- package/dist/data/mathdemo/function/gcd__loop_body_5.mcfunction +5 -0
- package/dist/data/mathdemo/function/gcd__loop_exit_6.mcfunction +1 -0
- package/dist/data/mathdemo/function/gcd__loop_header_4.mcfunction +4 -0
- package/dist/data/mathdemo/function/gcd__merge_1.mcfunction +5 -0
- package/dist/data/mathdemo/function/gcd__merge_3.mcfunction +1 -0
- package/dist/data/mathdemo/function/gcd__then_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/gcd__then_2.mcfunction +4 -0
- package/dist/data/mathdemo/function/gravity_fx.mcfunction +2 -0
- package/dist/data/mathdemo/function/hash_1d.mcfunction +15 -0
- package/dist/data/mathdemo/function/hash_1d_pos.mcfunction +9 -0
- package/dist/data/mathdemo/function/hash_1d_pos__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/hash_1d_pos__then_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/hash_2d.mcfunction +11 -0
- package/dist/data/mathdemo/function/hash_2d_pos.mcfunction +11 -0
- package/dist/data/mathdemo/function/hash_2d_pos__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/hash_2d_pos__then_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/impact_velocity.mcfunction +5 -0
- package/dist/data/mathdemo/function/impact_velocity__merge_1.mcfunction +16 -0
- package/dist/data/mathdemo/function/impact_velocity__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/is_grounded.mcfunction +5 -0
- package/dist/data/mathdemo/function/is_grounded__merge_1.mcfunction +2 -0
- package/dist/data/mathdemo/function/is_grounded__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/isqrt.mcfunction +5 -0
- package/dist/data/mathdemo/function/isqrt__loop_body_10.mcfunction +8 -0
- package/dist/data/mathdemo/function/isqrt__loop_body_13.mcfunction +11 -0
- package/dist/data/mathdemo/function/isqrt__loop_body_7.mcfunction +8 -0
- package/dist/data/mathdemo/function/isqrt__loop_exit_11.mcfunction +2 -0
- package/dist/data/mathdemo/function/isqrt__loop_exit_14.mcfunction +1 -0
- package/dist/data/mathdemo/function/isqrt__loop_exit_8.mcfunction +9 -0
- package/dist/data/mathdemo/function/isqrt__loop_header_12.mcfunction +4 -0
- package/dist/data/mathdemo/function/isqrt__loop_header_6.mcfunction +4 -0
- package/dist/data/mathdemo/function/isqrt__loop_header_9.mcfunction +3 -0
- package/dist/data/mathdemo/function/isqrt__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/isqrt__merge_16.mcfunction +5 -0
- package/dist/data/mathdemo/function/isqrt__merge_4.mcfunction +3 -0
- package/dist/data/mathdemo/function/isqrt__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/isqrt__then_15.mcfunction +1 -0
- package/dist/data/mathdemo/function/isqrt__then_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/lcm.mcfunction +11 -0
- package/dist/data/mathdemo/function/lcm__merge_1.mcfunction +5 -0
- package/dist/data/mathdemo/function/lcm__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/length2d_fixed.mcfunction +15 -0
- package/dist/data/mathdemo/function/length3d_fixed.mcfunction +20 -0
- package/dist/data/mathdemo/function/lerp.mcfunction +13 -0
- package/dist/data/mathdemo/function/lerp2d_x.mcfunction +13 -0
- package/dist/data/mathdemo/function/lerp2d_y.mcfunction +13 -0
- package/dist/data/mathdemo/function/ln.mcfunction +9 -0
- package/dist/data/mathdemo/function/ln__loop_body_1.mcfunction +8 -0
- package/dist/data/mathdemo/function/ln__loop_body_4.mcfunction +8 -0
- package/dist/data/mathdemo/function/ln__loop_exit_2.mcfunction +1 -0
- package/dist/data/mathdemo/function/ln__loop_exit_5.mcfunction +37 -0
- package/dist/data/mathdemo/function/ln__loop_header_0.mcfunction +3 -0
- package/dist/data/mathdemo/function/ln__loop_header_3.mcfunction +6 -0
- package/dist/data/mathdemo/function/load.mcfunction +1 -0
- package/dist/data/mathdemo/function/log10_fx.mcfunction +11 -0
- package/dist/data/mathdemo/function/log2_fx.mcfunction +11 -0
- package/dist/data/mathdemo/function/log2_int.mcfunction +5 -0
- package/dist/data/mathdemo/function/log2_int__loop_body_4.mcfunction +8 -0
- package/dist/data/mathdemo/function/log2_int__loop_exit_5.mcfunction +1 -0
- package/dist/data/mathdemo/function/log2_int__loop_header_3.mcfunction +4 -0
- package/dist/data/mathdemo/function/log2_int__merge_1.mcfunction +3 -0
- package/dist/data/mathdemo/function/log2_int__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/loga_fx.mcfunction +10 -0
- package/dist/data/mathdemo/function/loga_fx__merge_1.mcfunction +9 -0
- package/dist/data/mathdemo/function/loga_fx__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/manhattan.mcfunction +14 -0
- package/dist/data/mathdemo/function/manhattan3d.mcfunction +19 -0
- package/dist/data/mathdemo/function/manhattan3d__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/manhattan3d__merge_3.mcfunction +4 -0
- package/dist/data/mathdemo/function/manhattan3d__merge_5.mcfunction +5 -0
- package/dist/data/mathdemo/function/manhattan3d__then_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/manhattan3d__then_2.mcfunction +4 -0
- package/dist/data/mathdemo/function/manhattan3d__then_4.mcfunction +4 -0
- package/dist/data/mathdemo/function/manhattan__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/manhattan__merge_3.mcfunction +3 -0
- package/dist/data/mathdemo/function/manhattan__then_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/manhattan__then_2.mcfunction +4 -0
- package/dist/data/mathdemo/function/map.mcfunction +12 -0
- package/dist/data/mathdemo/function/map__merge_1.mcfunction +11 -0
- package/dist/data/mathdemo/function/map__then_0.mcfunction +1 -0
- package/dist/data/mathdemo/function/mulfix.mcfunction +8 -0
- package/dist/data/mathdemo/function/neg2d_x.mcfunction +4 -0
- package/dist/data/mathdemo/function/neg2d_y.mcfunction +4 -0
- package/dist/data/mathdemo/function/neg3d_x.mcfunction +4 -0
- package/dist/data/mathdemo/function/neg3d_y.mcfunction +4 -0
- package/dist/data/mathdemo/function/neg3d_z.mcfunction +4 -0
- package/dist/data/mathdemo/function/normalize2d_x.mcfunction +11 -0
- package/dist/data/mathdemo/function/normalize2d_x__merge_1.mcfunction +6 -0
- package/dist/data/mathdemo/function/normalize2d_x__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/normalize2d_y.mcfunction +11 -0
- package/dist/data/mathdemo/function/normalize2d_y__merge_1.mcfunction +6 -0
- package/dist/data/mathdemo/function/normalize2d_y__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/pow_int.mcfunction +6 -0
- package/dist/data/mathdemo/function/pow_int__loop_body_4.mcfunction +7 -0
- package/dist/data/mathdemo/function/pow_int__loop_exit_5.mcfunction +1 -0
- package/dist/data/mathdemo/function/pow_int__loop_header_3.mcfunction +4 -0
- package/dist/data/mathdemo/function/pow_int__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/pow_int__merge_7.mcfunction +8 -0
- package/dist/data/mathdemo/function/pow_int__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/pow_int__then_6.mcfunction +4 -0
- package/dist/data/mathdemo/function/projectile_land_t.mcfunction +5 -0
- package/dist/data/mathdemo/function/projectile_land_t__merge_1.mcfunction +7 -0
- package/dist/data/mathdemo/function/projectile_land_t__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/projectile_max_height.mcfunction +10 -0
- package/dist/data/mathdemo/function/projectile_max_height__const_200.mcfunction +8 -0
- package/dist/data/mathdemo/function/projectile_vy.mcfunction +9 -0
- package/dist/data/mathdemo/function/projectile_x.mcfunction +8 -0
- package/dist/data/mathdemo/function/projectile_y.mcfunction +19 -0
- package/dist/data/mathdemo/function/quadratic_disc.mcfunction +12 -0
- package/dist/data/mathdemo/function/quadratic_x1.mcfunction +7 -0
- package/dist/data/mathdemo/function/quadratic_x1__merge_1.mcfunction +13 -0
- package/dist/data/mathdemo/function/quadratic_x1__merge_4.mcfunction +15 -0
- package/dist/data/mathdemo/function/quadratic_x1__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/quadratic_x1__then_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/quadratic_x2.mcfunction +7 -0
- package/dist/data/mathdemo/function/quadratic_x2__merge_1.mcfunction +13 -0
- package/dist/data/mathdemo/function/quadratic_x2__merge_4.mcfunction +15 -0
- package/dist/data/mathdemo/function/quadratic_x2__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/quadratic_x2__then_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/rotate2d_x.mcfunction +20 -0
- package/dist/data/mathdemo/function/rotate2d_y.mcfunction +20 -0
- package/dist/data/mathdemo/function/scale2d_x.mcfunction +8 -0
- package/dist/data/mathdemo/function/scale2d_y.mcfunction +8 -0
- package/dist/data/mathdemo/function/scale3d_x.mcfunction +8 -0
- package/dist/data/mathdemo/function/scale3d_y.mcfunction +8 -0
- package/dist/data/mathdemo/function/scale3d_z.mcfunction +8 -0
- package/dist/data/mathdemo/function/sign.mcfunction +5 -0
- package/dist/data/mathdemo/function/sign__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/sign__merge_4.mcfunction +2 -0
- package/dist/data/mathdemo/function/sign__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/sign__then_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/sin_fixed.mcfunction +9 -0
- package/dist/data/mathdemo/function/sin_fixed__merge_1.mcfunction +4 -0
- package/dist/data/mathdemo/function/sin_fixed__merge_3.mcfunction +4 -0
- package/dist/data/mathdemo/function/sin_fixed__merge_6.mcfunction +4 -0
- package/dist/data/mathdemo/function/sin_fixed__merge_9.mcfunction +10 -0
- package/dist/data/mathdemo/function/sin_fixed__then_0.mcfunction +4 -0
- package/dist/data/mathdemo/function/sin_fixed__then_2.mcfunction +6 -0
- package/dist/data/mathdemo/function/sin_fixed__then_5.mcfunction +8 -0
- package/dist/data/mathdemo/function/sin_fixed__then_8.mcfunction +10 -0
- package/dist/data/mathdemo/function/smootherstep.mcfunction +10 -0
- package/dist/data/mathdemo/function/smootherstep__merge_1.mcfunction +12 -0
- package/dist/data/mathdemo/function/smootherstep__merge_4.mcfunction +4 -0
- package/dist/data/mathdemo/function/smootherstep__merge_6.mcfunction +27 -0
- package/dist/data/mathdemo/function/smootherstep__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/smootherstep__then_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/smootherstep__then_5.mcfunction +2 -0
- package/dist/data/mathdemo/function/smoothstep.mcfunction +10 -0
- package/dist/data/mathdemo/function/smoothstep__merge_1.mcfunction +12 -0
- package/dist/data/mathdemo/function/smoothstep__merge_4.mcfunction +4 -0
- package/dist/data/mathdemo/function/smoothstep__merge_6.mcfunction +15 -0
- package/dist/data/mathdemo/function/smoothstep__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/smoothstep__then_3.mcfunction +2 -0
- package/dist/data/mathdemo/function/smoothstep__then_5.mcfunction +2 -0
- package/dist/data/mathdemo/function/solve2x2_x.mcfunction +17 -0
- package/dist/data/mathdemo/function/solve2x2_x__merge_1.mcfunction +12 -0
- package/dist/data/mathdemo/function/solve2x2_x__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/solve2x2_y.mcfunction +17 -0
- package/dist/data/mathdemo/function/solve2x2_y__merge_1.mcfunction +12 -0
- package/dist/data/mathdemo/function/solve2x2_y__then_0.mcfunction +2 -0
- package/dist/data/mathdemo/function/spring_force.mcfunction +11 -0
- package/dist/data/mathdemo/function/spring_update_v.mcfunction +18 -0
- package/dist/data/mathdemo/function/sqrt_fixed.mcfunction +8 -0
- package/dist/data/mathdemo/function/sqrt_fx.mcfunction +11 -0
- package/dist/data/mathdemo/function/sqrt_fx__const_20000.mcfunction +8 -0
- package/dist/data/mathdemo/function/start.mcfunction +6 -0
- package/dist/data/mathdemo/function/sub2d_x.mcfunction +5 -0
- package/dist/data/mathdemo/function/sub2d_y.mcfunction +5 -0
- package/dist/data/mathdemo/function/sub3d_x.mcfunction +5 -0
- package/dist/data/mathdemo/function/sub3d_y.mcfunction +5 -0
- package/dist/data/mathdemo/function/sub3d_z.mcfunction +5 -0
- package/dist/data/mathdemo/function/terrain_height.mcfunction +24 -0
- package/dist/data/mathdemo/function/terrain_height__const_0_0_64_20.mcfunction +17 -0
- package/dist/data/mathdemo/function/terrain_height__const_10_5_64_20.mcfunction +17 -0
- package/dist/data/mathdemo/function/update_pos.mcfunction +5 -0
- package/dist/data/mathdemo/function/value_noise_1d.mcfunction +13 -0
- package/dist/data/mathdemo/function/value_noise_1d__merge_1.mcfunction +39 -0
- package/dist/data/mathdemo/function/value_noise_1d__then_0.mcfunction +7 -0
- package/dist/data/mathdemo/function/value_noise_2d.mcfunction +14 -0
- package/dist/data/mathdemo/function/value_noise_2d__merge_1.mcfunction +12 -0
- package/dist/data/mathdemo/function/value_noise_2d__merge_3.mcfunction +98 -0
- package/dist/data/mathdemo/function/value_noise_2d__then_0.mcfunction +7 -0
- package/dist/data/mathdemo/function/value_noise_2d__then_2.mcfunction +7 -0
- package/dist/data/mathdemo/function/water_drag_fx.mcfunction +2 -0
- package/dist/data/minecraft/tags/function/load.json +2 -1
- package/dist/data/minecraft/tags/function/tick.json +1 -1
- package/dist/data/test/function/__dyn_idx_test_arrays_a.mcfunction +1 -0
- package/dist/data/test/function/__dyn_idx_test_arrays_b.mcfunction +1 -0
- package/dist/data/test/function/__dyn_idx_test_arrays_c.mcfunction +1 -0
- package/dist/data/test/function/__dyn_idx_test_arrays_counter.mcfunction +1 -0
- package/dist/data/test/function/__dyn_idx_test_arrays_d.mcfunction +1 -0
- package/dist/data/test/function/__dyn_idx_test_arrays_e.mcfunction +1 -0
- package/dist/data/test/function/__dyn_idx_test_arrays_g.mcfunction +1 -0
- package/dist/data/test/function/__dyn_idx_test_arrays_h.mcfunction +1 -0
- package/dist/data/test/function/__dyn_idx_test_arrays_one.mcfunction +1 -0
- package/dist/data/test/function/__dyn_wrt_test_arrays_f.mcfunction +1 -0
- package/dist/data/test/function/__dyn_wrt_test_arrays_r.mcfunction +1 -0
- package/dist/data/test/function/__dyn_wrt_test_arrays_s.mcfunction +1 -0
- package/dist/data/test/function/_apply.mcfunction +5 -0
- package/dist/data/test/function/_divider.mcfunction +1 -0
- package/dist/data/test/function/_dump_advanced_phase.mcfunction +4 -0
- package/dist/data/test/function/_dump_advanced_phase__loop_body_1.mcfunction +7 -0
- package/dist/data/test/function/_dump_advanced_phase__loop_body_6.mcfunction +10 -0
- package/dist/data/test/function/_dump_advanced_phase__loop_exit_2.mcfunction +20 -0
- package/dist/data/test/function/_dump_advanced_phase__loop_exit_7.mcfunction +12 -0
- package/dist/data/test/function/_dump_advanced_phase__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/_dump_advanced_phase__loop_header_5.mcfunction +4 -0
- package/dist/data/test/function/_dump_advanced_phase__merge_4.mcfunction +4 -0
- package/dist/data/test/function/_dump_advanced_phase__then_3.mcfunction +2 -0
- package/dist/data/test/function/_dump_bigint_phase.mcfunction +28 -0
- package/dist/data/test/function/_dump_math_phase.mcfunction +4 -0
- package/dist/data/test/function/_dump_math_phase__loop_body_1.mcfunction +9 -0
- package/dist/data/test/function/_dump_math_phase__loop_exit_2.mcfunction +18 -0
- package/dist/data/test/function/_dump_math_phase__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/_fp.mcfunction +2 -0
- package/dist/data/test/function/_next_phase.mcfunction +1 -0
- package/dist/data/test/function/_section.mcfunction +3 -0
- package/dist/data/test/function/_section__const_0.mcfunction +3 -0
- package/dist/data/test/function/_tick_advanced_live.mcfunction +5 -0
- package/dist/data/test/function/_tick_advanced_live__foreach_t12.mcfunction +1 -0
- package/dist/data/test/function/_tick_bigint_live.mcfunction +8 -0
- package/dist/data/test/function/_tick_bigint_live__foreach_t11.mcfunction +1 -0
- package/dist/data/test/function/_tick_math.mcfunction +9 -0
- package/dist/data/test/function/_tick_math__foreach_t12.mcfunction +1 -0
- package/dist/data/test/function/_tick_visual.mcfunction +11 -0
- package/dist/data/test/function/_tick_visual__foreach_t12.mcfunction +1 -0
- package/dist/data/test/function/_tick_visual__foreach_t16.mcfunction +8 -0
- package/dist/data/test/function/_tick_visual__foreach_t17.mcfunction +8 -0
- package/dist/data/test/function/_tick_visual__foreach_t21.mcfunction +1 -0
- package/dist/data/test/function/air_drag_fx.mcfunction +2 -0
- package/dist/data/test/function/angle_between.mcfunction +28 -0
- package/dist/data/test/function/angle_between__and_false_2.mcfunction +2 -0
- package/dist/data/test/function/angle_between__and_false_8.mcfunction +2 -0
- package/dist/data/test/function/angle_between__and_merge_1.mcfunction +2 -0
- package/dist/data/test/function/angle_between__and_merge_7.mcfunction +2 -0
- package/dist/data/test/function/angle_between__and_right_0.mcfunction +4 -0
- package/dist/data/test/function/angle_between__and_right_6.mcfunction +4 -0
- package/dist/data/test/function/angle_between__merge_10.mcfunction +26 -0
- package/dist/data/test/function/angle_between__merge_4.mcfunction +4 -0
- package/dist/data/test/function/angle_between__then_3.mcfunction +2 -0
- package/dist/data/test/function/angle_between__then_9.mcfunction +2 -0
- package/dist/data/test/function/apply_drag.mcfunction +8 -0
- package/dist/data/test/function/apply_gravity.mcfunction +6 -0
- package/dist/data/test/function/approx_eq.mcfunction +1 -2
- package/dist/data/test/function/approx_eq__merge_1.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__loop_body_26.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__loop_exit_27.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__loop_header_25.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__merge_1.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__merge_10.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__merge_16.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__merge_18.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__merge_20.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__merge_22.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__merge_3.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__merge_32.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__merge_34.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__then_0.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__then_33.mcfunction +1 -2
- package/dist/data/test/function/atan2_fixed__then_9.mcfunction +1 -2
- package/dist/data/test/function/bezier_cubic.mcfunction +36 -0
- package/dist/data/test/function/bezier_quad.mcfunction +20 -0
- package/dist/data/test/function/bigint3_borrow_lo.mcfunction +1 -2
- package/dist/data/test/function/bigint3_borrow_mid.mcfunction +1 -2
- package/dist/data/test/function/bigint3_cmp.mcfunction +1 -2
- package/dist/data/test/function/bigint3_cmp__merge_1.mcfunction +1 -2
- package/dist/data/test/function/bigint3_cmp__merge_10.mcfunction +1 -2
- package/dist/data/test/function/bigint3_cmp__merge_13.mcfunction +1 -2
- package/dist/data/test/function/bigint3_cmp__merge_4.mcfunction +1 -2
- package/dist/data/test/function/bigint3_cmp__merge_7.mcfunction +1 -2
- package/dist/data/test/function/bigint3_sub_lo.mcfunction +1 -2
- package/dist/data/test/function/bigint3_sub_mid.mcfunction +1 -2
- package/dist/data/test/function/bigint_add.mcfunction +8 -0
- package/dist/data/test/function/bigint_add__arr_a__test_arrays__a__b__test_arrays__b__result__test_arrays__r.mcfunction +6 -0
- package/dist/data/test/function/bigint_add__arr_a__test_arrays__a__b__test_arrays__b__result__test_arrays__r__loop_body_1.mcfunction +22 -0
- package/dist/data/test/function/bigint_add__arr_a__test_arrays__a__b__test_arrays__b__result__test_arrays__r__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_add__arr_a__test_arrays__a__b__test_arrays__b__result__test_arrays__r__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/bigint_add__arr_a__test_arrays__counter__b__test_arrays__one__result__test_arrays__r.mcfunction +6 -0
- package/dist/data/test/function/bigint_add__arr_a__test_arrays__counter__b__test_arrays__one__result__test_arrays__r__loop_body_1.mcfunction +22 -0
- package/dist/data/test/function/bigint_add__arr_a__test_arrays__counter__b__test_arrays__one__result__test_arrays__r__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_add__arr_a__test_arrays__counter__b__test_arrays__one__result__test_arrays__r__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/bigint_add__loop_body_1.mcfunction +12 -0
- package/dist/data/test/function/bigint_add__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_add__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/bigint_cmp.mcfunction +5 -0
- package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h.mcfunction +3 -0
- package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__loop_body_1.mcfunction +7 -0
- package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__loop_exit_2.mcfunction +2 -0
- package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__loop_header_0.mcfunction +3 -0
- package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__merge_4.mcfunction +7 -0
- package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__merge_7.mcfunction +4 -0
- package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__then_3.mcfunction +2 -0
- package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__then_6.mcfunction +2 -0
- package/dist/data/test/function/bigint_cmp__loop_body_1.mcfunction +3 -0
- package/dist/data/test/function/bigint_cmp__loop_exit_2.mcfunction +2 -0
- package/dist/data/test/function/bigint_cmp__loop_header_0.mcfunction +3 -0
- package/dist/data/test/function/bigint_cmp__merge_4.mcfunction +3 -0
- package/dist/data/test/function/bigint_cmp__merge_7.mcfunction +4 -0
- package/dist/data/test/function/bigint_cmp__then_3.mcfunction +2 -0
- package/dist/data/test/function/bigint_cmp__then_6.mcfunction +2 -0
- package/dist/data/test/function/bigint_copy.mcfunction +3 -0
- package/dist/data/test/function/bigint_copy__loop_body_1.mcfunction +4 -0
- package/dist/data/test/function/bigint_copy__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_copy__loop_header_0.mcfunction +3 -0
- package/dist/data/test/function/bigint_is_zero.mcfunction +4 -0
- package/dist/data/test/function/bigint_is_zero__loop_body_1.mcfunction +4 -0
- package/dist/data/test/function/bigint_is_zero__loop_exit_2.mcfunction +2 -0
- package/dist/data/test/function/bigint_is_zero__loop_header_0.mcfunction +3 -0
- package/dist/data/test/function/bigint_is_zero__merge_4.mcfunction +4 -0
- package/dist/data/test/function/bigint_is_zero__then_3.mcfunction +2 -0
- package/dist/data/test/function/bigint_leading_zeros.mcfunction +5 -0
- package/dist/data/test/function/bigint_leading_zeros__loop_body_1.mcfunction +4 -0
- package/dist/data/test/function/bigint_leading_zeros__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_leading_zeros__loop_header_0.mcfunction +3 -0
- package/dist/data/test/function/bigint_leading_zeros__merge_4.mcfunction +9 -0
- package/dist/data/test/function/bigint_leading_zeros__then_3.mcfunction +1 -0
- package/dist/data/test/function/bigint_mul_small.mcfunction +8 -0
- package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f.mcfunction +7 -0
- package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f__loop_body_1.mcfunction +20 -0
- package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/bigint_mul_small__loop_body_1.mcfunction +12 -0
- package/dist/data/test/function/bigint_mul_small__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_mul_small__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/bigint_shift_left.mcfunction +3 -0
- package/dist/data/test/function/bigint_shift_left__loop_body_1.mcfunction +4 -0
- package/dist/data/test/function/bigint_shift_left__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_shift_left__loop_header_0.mcfunction +5 -0
- package/dist/data/test/function/bigint_sub.mcfunction +8 -0
- package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s.mcfunction +6 -0
- package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__loop_body_1.mcfunction +13 -0
- package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__merge_4.mcfunction +4 -0
- package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__merge_6.mcfunction +7 -0
- package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__then_3.mcfunction +5 -0
- package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__then_5.mcfunction +2 -0
- package/dist/data/test/function/bigint_sub__loop_body_1.mcfunction +9 -0
- package/dist/data/test/function/bigint_sub__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_sub__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/bigint_sub__merge_4.mcfunction +4 -0
- package/dist/data/test/function/bigint_sub__merge_6.mcfunction +4 -0
- package/dist/data/test/function/bigint_sub__then_3.mcfunction +5 -0
- package/dist/data/test/function/bigint_sub__then_5.mcfunction +2 -0
- package/dist/data/test/function/bigint_zero.mcfunction +3 -0
- package/dist/data/test/function/bigint_zero__loop_body_1.mcfunction +4 -0
- package/dist/data/test/function/bigint_zero__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/bigint_zero__loop_header_0.mcfunction +3 -0
- package/dist/data/test/function/billboard_y.mcfunction +7 -0
- package/dist/data/test/function/bounce_v.mcfunction +10 -0
- package/dist/data/test/function/cbrt_fx.mcfunction +1 -2
- package/dist/data/test/function/cbrt_fx__loop_body_6.mcfunction +1 -2
- package/dist/data/test/function/cbrt_fx__loop_header_5.mcfunction +1 -2
- package/dist/data/test/function/cbrt_fx__merge_1.mcfunction +1 -2
- package/dist/data/test/function/cbrt_fx__merge_11.mcfunction +1 -2
- package/dist/data/test/function/cbrt_fx__merge_9.mcfunction +1 -2
- package/dist/data/test/function/chebyshev.mcfunction +1 -2
- package/dist/data/test/function/chebyshev3d.mcfunction +1 -2
- package/dist/data/test/function/chebyshev3d__merge_1.mcfunction +1 -2
- package/dist/data/test/function/chebyshev3d__merge_3.mcfunction +1 -2
- package/dist/data/test/function/chebyshev3d__merge_5.mcfunction +1 -2
- package/dist/data/test/function/chebyshev3d__merge_7.mcfunction +1 -2
- package/dist/data/test/function/chebyshev__merge_1.mcfunction +1 -2
- package/dist/data/test/function/chebyshev__merge_3.mcfunction +1 -2
- package/dist/data/test/function/circular_x.mcfunction +14 -0
- package/dist/data/test/function/circular_z.mcfunction +14 -0
- package/dist/data/test/function/clamp_circle_x.mcfunction +13 -0
- package/dist/data/test/function/clamp_circle_x__merge_1.mcfunction +10 -0
- package/dist/data/test/function/clamp_circle_x__then_0.mcfunction +1 -0
- package/dist/data/test/function/clamp_circle_y.mcfunction +13 -0
- package/dist/data/test/function/clamp_circle_y__merge_1.mcfunction +10 -0
- package/dist/data/test/function/clamp_circle_y__then_0.mcfunction +1 -0
- package/dist/data/test/function/clamp_velocity.mcfunction +5 -0
- package/dist/data/test/function/clamp_velocity__merge_1.mcfunction +5 -0
- package/dist/data/test/function/clamp_velocity__merge_4.mcfunction +1 -0
- package/dist/data/test/function/clamp_velocity__then_0.mcfunction +1 -0
- package/dist/data/test/function/clamp_velocity__then_3.mcfunction +3 -0
- package/dist/data/test/function/collatz_steps.mcfunction +5 -0
- package/dist/data/test/function/collatz_steps__else_8.mcfunction +6 -0
- package/dist/data/test/function/collatz_steps__loop_body_4.mcfunction +7 -0
- package/dist/data/test/function/collatz_steps__loop_exit_5.mcfunction +1 -0
- package/dist/data/test/function/collatz_steps__loop_header_3.mcfunction +4 -0
- package/dist/data/test/function/collatz_steps__merge_1.mcfunction +3 -0
- package/dist/data/test/function/collatz_steps__merge_7.mcfunction +4 -0
- package/dist/data/test/function/collatz_steps__then_0.mcfunction +2 -0
- package/dist/data/test/function/collatz_steps__then_6.mcfunction +5 -0
- package/dist/data/test/function/combinations.mcfunction +1 -2
- package/dist/data/test/function/combinations__loop_header_8.mcfunction +1 -2
- package/dist/data/test/function/combinations__merge_1.mcfunction +1 -2
- package/dist/data/test/function/combinations__merge_4.mcfunction +1 -2
- package/dist/data/test/function/cos_fixed__const_0.mcfunction +5 -0
- package/dist/data/test/function/count_digits.mcfunction +6 -0
- package/dist/data/test/function/count_digits__loop_body_6.mcfunction +8 -0
- package/dist/data/test/function/count_digits__loop_exit_7.mcfunction +1 -0
- package/dist/data/test/function/count_digits__loop_header_5.mcfunction +4 -0
- package/dist/data/test/function/count_digits__merge_1.mcfunction +4 -0
- package/dist/data/test/function/count_digits__merge_3.mcfunction +2 -0
- package/dist/data/test/function/count_digits__then_0.mcfunction +4 -0
- package/dist/data/test/function/count_digits__then_2.mcfunction +2 -0
- package/dist/data/test/function/debug_bigint.mcfunction +25 -0
- package/dist/data/test/function/digit_sum.mcfunction +6 -0
- package/dist/data/test/function/digit_sum__loop_body_6.mcfunction +11 -0
- package/dist/data/test/function/digit_sum__loop_exit_7.mcfunction +1 -0
- package/dist/data/test/function/digit_sum__loop_header_5.mcfunction +4 -0
- package/dist/data/test/function/digit_sum__merge_1.mcfunction +4 -0
- package/dist/data/test/function/digit_sum__merge_3.mcfunction +2 -0
- package/dist/data/test/function/digit_sum__then_0.mcfunction +4 -0
- package/dist/data/test/function/digit_sum__then_2.mcfunction +2 -0
- package/dist/data/test/function/digital_root.mcfunction +5 -0
- package/dist/data/test/function/digital_root__merge_1.mcfunction +8 -0
- package/dist/data/test/function/digital_root__merge_4.mcfunction +1 -0
- package/dist/data/test/function/digital_root__then_0.mcfunction +2 -0
- package/dist/data/test/function/digital_root__then_3.mcfunction +2 -0
- package/dist/data/test/function/divfix.mcfunction +1 -2
- package/dist/data/test/function/dump_advanced.mcfunction +1 -0
- package/dist/data/test/function/dump_bigint.mcfunction +1 -0
- package/dist/data/test/function/dump_math.mcfunction +1 -0
- package/dist/data/test/function/ease_in_back.mcfunction +26 -0
- package/dist/data/test/function/ease_in_bounce.mcfunction +9 -0
- package/dist/data/test/function/ease_in_cubic.mcfunction +12 -0
- package/dist/data/test/function/ease_in_expo.mcfunction +6 -0
- package/dist/data/test/function/ease_in_expo__merge_1.mcfunction +11 -0
- package/dist/data/test/function/ease_in_expo__then_0.mcfunction +2 -0
- package/dist/data/test/function/ease_in_out_back.mcfunction +6 -0
- package/dist/data/test/function/ease_in_out_back__merge_1.mcfunction +14 -0
- package/dist/data/test/function/ease_in_out_back__then_0.mcfunction +10 -0
- package/dist/data/test/function/ease_in_out_bounce.mcfunction +6 -0
- package/dist/data/test/function/ease_in_out_bounce__merge_1.mcfunction +14 -0
- package/dist/data/test/function/ease_in_out_bounce__then_0.mcfunction +10 -0
- package/dist/data/test/function/ease_in_out_cubic.mcfunction +6 -0
- package/dist/data/test/function/ease_in_out_cubic__merge_1.mcfunction +17 -0
- package/dist/data/test/function/ease_in_out_cubic__then_0.mcfunction +13 -0
- package/dist/data/test/function/ease_in_out_quad.mcfunction +6 -0
- package/dist/data/test/function/ease_in_out_quad__merge_1.mcfunction +12 -0
- package/dist/data/test/function/ease_in_out_quad__then_0.mcfunction +8 -0
- package/dist/data/test/function/ease_in_out_sine.mcfunction +6 -0
- package/dist/data/test/function/ease_in_out_sine__merge_1.mcfunction +14 -0
- package/dist/data/test/function/ease_in_out_sine__then_0.mcfunction +10 -0
- package/dist/data/test/function/ease_in_quad.mcfunction +7 -0
- package/dist/data/test/function/ease_in_quart.mcfunction +12 -0
- package/dist/data/test/function/ease_in_sine.mcfunction +30 -0
- package/dist/data/test/function/ease_linear.mcfunction +2 -0
- package/dist/data/test/function/ease_out_back.mcfunction +9 -0
- package/dist/data/test/function/ease_out_bounce.mcfunction +7 -0
- package/dist/data/test/function/ease_out_bounce__merge_1.mcfunction +5 -0
- package/dist/data/test/function/ease_out_bounce__merge_4.mcfunction +5 -0
- package/dist/data/test/function/ease_out_bounce__merge_7.mcfunction +15 -0
- package/dist/data/test/function/ease_out_bounce__then_0.mcfunction +11 -0
- package/dist/data/test/function/ease_out_bounce__then_3.mcfunction +15 -0
- package/dist/data/test/function/ease_out_bounce__then_6.mcfunction +15 -0
- package/dist/data/test/function/ease_out_cubic.mcfunction +16 -0
- package/dist/data/test/function/ease_out_expo.mcfunction +6 -0
- package/dist/data/test/function/ease_out_expo__merge_1.mcfunction +8 -0
- package/dist/data/test/function/ease_out_expo__then_0.mcfunction +2 -0
- package/dist/data/test/function/ease_out_quad.mcfunction +11 -0
- package/dist/data/test/function/ease_out_quart.mcfunction +16 -0
- package/dist/data/test/function/ease_out_sine.mcfunction +9 -0
- package/dist/data/test/function/ease_smooth.mcfunction +23 -0
- package/dist/data/test/function/ease_smoother.mcfunction +41 -0
- package/dist/data/test/function/exp_fx.mcfunction +1 -2
- package/dist/data/test/function/exp_fx__loop_header_4.mcfunction +1 -2
- package/dist/data/test/function/exp_fx__loop_header_9.mcfunction +1 -2
- package/dist/data/test/function/exp_fx__merge_1.mcfunction +1 -2
- package/dist/data/test/function/exp_fx__merge_3.mcfunction +1 -2
- package/dist/data/test/function/factorial.mcfunction +1 -2
- package/dist/data/test/function/factorial__loop_header_3.mcfunction +1 -2
- package/dist/data/test/function/fbm_1d.mcfunction +9 -0
- package/dist/data/test/function/fbm_1d__loop_body_1.mcfunction +33 -0
- package/dist/data/test/function/fbm_1d__loop_exit_2.mcfunction +5 -0
- package/dist/data/test/function/fbm_1d__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/fbm_1d__merge_4.mcfunction +6 -0
- package/dist/data/test/function/fbm_1d__then_3.mcfunction +2 -0
- package/dist/data/test/function/fbm_2d.mcfunction +10 -0
- package/dist/data/test/function/fbm_2d__loop_body_1.mcfunction +39 -0
- package/dist/data/test/function/fbm_2d__loop_exit_2.mcfunction +5 -0
- package/dist/data/test/function/fbm_2d__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/fbm_2d__merge_4.mcfunction +6 -0
- package/dist/data/test/function/fbm_2d__then_3.mcfunction +2 -0
- package/dist/data/test/function/fib.mcfunction +5 -0
- package/dist/data/test/function/fib__loop_body_7.mcfunction +8 -0
- package/dist/data/test/function/fib__loop_exit_8.mcfunction +1 -0
- package/dist/data/test/function/fib__loop_header_6.mcfunction +3 -0
- package/dist/data/test/function/fib__merge_1.mcfunction +4 -0
- package/dist/data/test/function/fib__merge_4.mcfunction +4 -0
- package/dist/data/test/function/fib__then_0.mcfunction +2 -0
- package/dist/data/test/function/fib__then_3.mcfunction +2 -0
- package/dist/data/test/function/friction_decel.mcfunction +5 -0
- package/dist/data/test/function/friction_decel__merge_1.mcfunction +5 -0
- package/dist/data/test/function/friction_decel__merge_4.mcfunction +2 -0
- package/dist/data/test/function/friction_decel__then_0.mcfunction +3 -0
- package/dist/data/test/function/friction_decel__then_3.mcfunction +3 -0
- package/dist/data/test/function/gamma_int.mcfunction +1 -2
- package/dist/data/test/function/gcd.mcfunction +1 -2
- package/dist/data/test/function/gcd__loop_header_4.mcfunction +1 -2
- package/dist/data/test/function/gcd__merge_1.mcfunction +1 -2
- package/dist/data/test/function/gravity_fx.mcfunction +2 -0
- package/dist/data/test/function/hash_1d.mcfunction +15 -0
- package/dist/data/test/function/hash_1d_pos.mcfunction +10 -0
- package/dist/data/test/function/hash_1d_pos__merge_1.mcfunction +4 -0
- package/dist/data/test/function/hash_1d_pos__then_0.mcfunction +4 -0
- package/dist/data/test/function/hash_2d.mcfunction +11 -0
- package/dist/data/test/function/hash_2d_pos.mcfunction +12 -0
- package/dist/data/test/function/hash_2d_pos__merge_1.mcfunction +4 -0
- package/dist/data/test/function/hash_2d_pos__then_0.mcfunction +4 -0
- package/dist/data/test/function/hash_int.mcfunction +6 -0
- package/dist/data/test/function/hash_int__merge_1.mcfunction +14 -0
- package/dist/data/test/function/hash_int__merge_3.mcfunction +14 -0
- package/dist/data/test/function/hash_int__merge_5.mcfunction +1 -0
- package/dist/data/test/function/hash_int__then_0.mcfunction +4 -0
- package/dist/data/test/function/hash_int__then_2.mcfunction +4 -0
- package/dist/data/test/function/hash_int__then_4.mcfunction +4 -0
- package/dist/data/test/function/impact_velocity.mcfunction +5 -0
- package/dist/data/test/function/impact_velocity__merge_1.mcfunction +16 -0
- package/dist/data/test/function/impact_velocity__then_0.mcfunction +2 -0
- package/dist/data/test/function/int32_to_bigint3_hi.mcfunction +1 -2
- package/dist/data/test/function/int32_to_bigint3_lo.mcfunction +1 -2
- package/dist/data/test/function/int32_to_bigint3_mid.mcfunction +1 -2
- package/dist/data/test/function/is_grounded.mcfunction +5 -0
- package/dist/data/test/function/is_grounded__merge_1.mcfunction +2 -0
- package/dist/data/test/function/is_grounded__then_0.mcfunction +2 -0
- package/dist/data/test/function/is_prime.mcfunction +5 -0
- package/dist/data/test/function/is_prime__loop_body_10.mcfunction +6 -0
- package/dist/data/test/function/is_prime__loop_exit_11.mcfunction +2 -0
- package/dist/data/test/function/is_prime__loop_header_9.mcfunction +5 -0
- package/dist/data/test/function/is_prime__merge_1.mcfunction +4 -0
- package/dist/data/test/function/is_prime__merge_13.mcfunction +4 -0
- package/dist/data/test/function/is_prime__merge_4.mcfunction +7 -0
- package/dist/data/test/function/is_prime__merge_7.mcfunction +2 -0
- package/dist/data/test/function/is_prime__then_0.mcfunction +2 -0
- package/dist/data/test/function/is_prime__then_12.mcfunction +2 -0
- package/dist/data/test/function/is_prime__then_3.mcfunction +2 -0
- package/dist/data/test/function/is_prime__then_6.mcfunction +2 -0
- package/dist/data/test/function/isqrt.mcfunction +1 -2
- package/dist/data/test/function/isqrt__loop_body_13.mcfunction +1 -2
- package/dist/data/test/function/isqrt__loop_header_12.mcfunction +1 -2
- package/dist/data/test/function/isqrt__loop_header_6.mcfunction +1 -2
- package/dist/data/test/function/isqrt__loop_header_9.mcfunction +1 -2
- package/dist/data/test/function/isqrt__merge_1.mcfunction +1 -2
- package/dist/data/test/function/julia_iter.mcfunction +9 -0
- package/dist/data/test/function/julia_iter__loop_body_1.mcfunction +36 -0
- package/dist/data/test/function/julia_iter__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/julia_iter__loop_header_0.mcfunction +3 -0
- package/dist/data/test/function/julia_iter__merge_4.mcfunction +4 -0
- package/dist/data/test/function/julia_iter__then_3.mcfunction +1 -0
- package/dist/data/test/function/lambda_demo.mcfunction +2 -0
- package/dist/data/test/function/lcm.mcfunction +1 -2
- package/dist/data/test/function/lerp_angle.mcfunction +7 -0
- package/dist/data/test/function/lerp_angle__loop_body_1.mcfunction +4 -0
- package/dist/data/test/function/lerp_angle__loop_body_4.mcfunction +4 -0
- package/dist/data/test/function/lerp_angle__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/lerp_angle__loop_exit_5.mcfunction +8 -0
- package/dist/data/test/function/lerp_angle__loop_header_0.mcfunction +4 -0
- package/dist/data/test/function/lerp_angle__loop_header_3.mcfunction +3 -0
- package/dist/data/test/function/ln__loop_header_0.mcfunction +1 -2
- package/dist/data/test/function/ln__loop_header_3.mcfunction +1 -2
- package/dist/data/test/function/log2_int.mcfunction +1 -2
- package/dist/data/test/function/log2_int__loop_header_3.mcfunction +1 -2
- package/dist/data/test/function/loga_fx.mcfunction +1 -2
- package/dist/data/test/function/mandelbrot_iter.mcfunction +7 -0
- package/dist/data/test/function/mandelbrot_iter__loop_body_1.mcfunction +36 -0
- package/dist/data/test/function/mandelbrot_iter__loop_exit_2.mcfunction +1 -0
- package/dist/data/test/function/mandelbrot_iter__loop_header_0.mcfunction +3 -0
- package/dist/data/test/function/mandelbrot_iter__merge_4.mcfunction +4 -0
- package/dist/data/test/function/mandelbrot_iter__then_3.mcfunction +1 -0
- package/dist/data/test/function/manhattan.mcfunction +1 -2
- package/dist/data/test/function/manhattan3d.mcfunction +1 -2
- package/dist/data/test/function/manhattan3d__merge_1.mcfunction +1 -2
- package/dist/data/test/function/manhattan3d__merge_3.mcfunction +1 -2
- package/dist/data/test/function/manhattan__merge_1.mcfunction +1 -2
- package/dist/data/test/function/map.mcfunction +1 -2
- package/dist/data/test/function/mod_pow.mcfunction +7 -0
- package/dist/data/test/function/mod_pow__loop_body_6.mcfunction +7 -0
- package/dist/data/test/function/mod_pow__loop_exit_7.mcfunction +1 -0
- package/dist/data/test/function/mod_pow__loop_header_5.mcfunction +4 -0
- package/dist/data/test/function/mod_pow__merge_1.mcfunction +8 -0
- package/dist/data/test/function/mod_pow__merge_4.mcfunction +2 -0
- package/dist/data/test/function/mod_pow__merge_9.mcfunction +10 -0
- package/dist/data/test/function/mod_pow__then_0.mcfunction +2 -0
- package/dist/data/test/function/mod_pow__then_3.mcfunction +4 -0
- package/dist/data/test/function/mod_pow__then_8.mcfunction +6 -0
- package/dist/data/test/function/newton_sqrt.mcfunction +5 -0
- package/dist/data/test/function/newton_sqrt__loop_body_7.mcfunction +10 -0
- package/dist/data/test/function/newton_sqrt__loop_exit_8.mcfunction +1 -0
- package/dist/data/test/function/newton_sqrt__loop_header_6.mcfunction +3 -0
- package/dist/data/test/function/newton_sqrt__merge_1.mcfunction +4 -0
- package/dist/data/test/function/newton_sqrt__merge_4.mcfunction +6 -0
- package/dist/data/test/function/newton_sqrt__then_0.mcfunction +2 -0
- package/dist/data/test/function/newton_sqrt__then_3.mcfunction +2 -0
- package/dist/data/test/function/noise1d.mcfunction +13 -0
- package/dist/data/test/function/noise1d__merge_1.mcfunction +20 -0
- package/dist/data/test/function/noise1d__merge_3.mcfunction +4 -0
- package/dist/data/test/function/noise1d__merge_5.mcfunction +11 -0
- package/dist/data/test/function/noise1d__then_0.mcfunction +7 -0
- package/dist/data/test/function/noise1d__then_2.mcfunction +4 -0
- package/dist/data/test/function/noise1d__then_4.mcfunction +4 -0
- package/dist/data/test/function/normalize2d_x.mcfunction +1 -2
- package/dist/data/test/function/normalize2d_y.mcfunction +1 -2
- package/dist/data/test/function/pow_int.mcfunction +1 -2
- package/dist/data/test/function/pow_int__loop_body_4.mcfunction +1 -2
- package/dist/data/test/function/pow_int__loop_header_3.mcfunction +1 -2
- package/dist/data/test/function/projectile_land_t.mcfunction +5 -0
- package/dist/data/test/function/projectile_land_t__merge_1.mcfunction +7 -0
- package/dist/data/test/function/projectile_land_t__then_0.mcfunction +2 -0
- package/dist/data/test/function/projectile_max_height.mcfunction +10 -0
- package/dist/data/test/function/projectile_vy.mcfunction +9 -0
- package/dist/data/test/function/projectile_x.mcfunction +8 -0
- package/dist/data/test/function/projectile_y.mcfunction +19 -0
- package/dist/data/test/function/ptimer/new.mcfunction +3 -0
- package/dist/data/test/function/ptimer/reset.mcfunction +1 -0
- package/dist/data/test/function/ptimer/tick.mcfunction +8 -0
- package/dist/data/test/function/ptimer/tick__merge_1.mcfunction +2 -0
- package/dist/data/test/function/ptimer/tick__then_0.mcfunction +3 -0
- package/dist/data/test/function/quadratic_x1.mcfunction +1 -2
- package/dist/data/test/function/quadratic_x1__merge_1.mcfunction +1 -2
- package/dist/data/test/function/quadratic_x2.mcfunction +1 -2
- package/dist/data/test/function/quadratic_x2__merge_1.mcfunction +1 -2
- package/dist/data/test/function/quat_cos_half.mcfunction +8 -0
- package/dist/data/test/function/quat_sin_half.mcfunction +8 -0
- package/dist/data/test/function/reverse_int.mcfunction +7 -0
- package/dist/data/test/function/reverse_int__loop_body_3.mcfunction +14 -0
- package/dist/data/test/function/reverse_int__loop_exit_4.mcfunction +4 -0
- package/dist/data/test/function/reverse_int__loop_header_2.mcfunction +4 -0
- package/dist/data/test/function/reverse_int__merge_1.mcfunction +2 -0
- package/dist/data/test/function/reverse_int__merge_6.mcfunction +1 -0
- package/dist/data/test/function/reverse_int__then_0.mcfunction +5 -0
- package/dist/data/test/function/reverse_int__then_5.mcfunction +3 -0
- package/dist/data/test/function/rotate_x_y.mcfunction +28 -0
- package/dist/data/test/function/rotate_x_z.mcfunction +28 -0
- package/dist/data/test/function/rotate_y_x.mcfunction +28 -0
- package/dist/data/test/function/rotate_y_z.mcfunction +30 -0
- package/dist/data/test/function/scale_x.mcfunction +8 -0
- package/dist/data/test/function/scale_y.mcfunction +8 -0
- package/dist/data/test/function/scale_z.mcfunction +8 -0
- package/dist/data/test/function/showcase_load.mcfunction +4 -0
- package/dist/data/test/function/showcase_tick.mcfunction +1 -0
- package/dist/data/test/function/sign.mcfunction +1 -2
- package/dist/data/test/function/sign__merge_1.mcfunction +1 -2
- package/dist/data/test/function/sin_fixed.mcfunction +1 -2
- package/dist/data/test/function/sin_fixed__merge_1.mcfunction +1 -2
- package/dist/data/test/function/sin_fixed__merge_3.mcfunction +1 -2
- package/dist/data/test/function/sin_fixed__merge_6.mcfunction +1 -2
- package/dist/data/test/function/smootherstep.mcfunction +1 -2
- package/dist/data/test/function/smootherstep__merge_1.mcfunction +1 -2
- package/dist/data/test/function/smootherstep__merge_4.mcfunction +1 -2
- package/dist/data/test/function/smoothstep.mcfunction +1 -2
- package/dist/data/test/function/smoothstep__merge_1.mcfunction +1 -2
- package/dist/data/test/function/smoothstep__merge_4.mcfunction +1 -2
- package/dist/data/test/function/solve2x2_x.mcfunction +1 -2
- package/dist/data/test/function/solve2x2_y.mcfunction +1 -2
- package/dist/data/test/function/spiral_ring.mcfunction +5 -0
- package/dist/data/test/function/spiral_ring__merge_1.mcfunction +13 -0
- package/dist/data/test/function/spiral_ring__then_0.mcfunction +2 -0
- package/dist/data/test/function/spring_force.mcfunction +11 -0
- package/dist/data/test/function/spring_update_v.mcfunction +18 -0
- package/dist/data/test/function/start.mcfunction +8 -0
- package/dist/data/test/function/stop.mcfunction +2 -0
- package/dist/data/test/function/stop__foreach_t0.mcfunction +1 -0
- package/dist/data/test/function/terrain_height.mcfunction +24 -0
- package/dist/data/test/function/uniform_scale.mcfunction +8 -0
- package/dist/data/test/function/update_pos.mcfunction +5 -0
- package/dist/data/test/function/value_noise_1d.mcfunction +14 -0
- package/dist/data/test/function/value_noise_1d__merge_1.mcfunction +39 -0
- package/dist/data/test/function/value_noise_1d__then_0.mcfunction +7 -0
- package/dist/data/test/function/value_noise_2d.mcfunction +15 -0
- package/dist/data/test/function/value_noise_2d__merge_1.mcfunction +13 -0
- package/dist/data/test/function/value_noise_2d__merge_3.mcfunction +98 -0
- package/dist/data/test/function/value_noise_2d__then_0.mcfunction +7 -0
- package/dist/data/test/function/value_noise_2d__then_2.mcfunction +7 -0
- package/dist/data/test/function/water_drag_fx.mcfunction +2 -0
- package/dist/pack.mcmeta +1 -1
- package/dist/src/__tests__/optimizer/lir/peephole.test.js +92 -0
- package/dist/src/ast/types.d.ts +7 -0
- package/dist/src/hir/lower.js +51 -0
- package/dist/src/optimizer/lir/peephole.d.ts +13 -4
- package/dist/src/optimizer/lir/peephole.js +44 -5
- package/dist/src/parser/index.js +12 -0
- package/editors/vscode/package-lock.json +3 -3
- package/editors/vscode/package.json +1 -1
- package/examples/math-demo.mcrs +127 -0
- package/examples/showcase.mcrs +64 -109
- package/package.json +1 -1
- package/src/__tests__/e2e/for-in-array.test.ts +62 -0
- package/src/__tests__/optimizer/lir/peephole.test.ts +100 -0
- package/src/ast/types.ts +1 -0
- package/src/hir/lower.ts +52 -0
- package/src/optimizer/lir/peephole.ts +50 -5
- package/src/parser/index.ts +13 -0
- package/src/stdlib/bigint.mcrs +128 -100
- package/src/stdlib/easing.mcrs +182 -0
- package/src/stdlib/matrix.mcrs +108 -0
- package/src/stdlib/noise.mcrs +153 -0
- package/src/stdlib/physics.mcrs +134 -0
package/dist/src/hir/lower.js
CHANGED
|
@@ -174,6 +174,57 @@ function lowerStmt(stmt) {
|
|
|
174
174
|
};
|
|
175
175
|
return [initStmt, whileStmt];
|
|
176
176
|
}
|
|
177
|
+
// --- Desugaring: for_in_array → let idx = 0; while(idx < len) { let v = arr[idx]; body; idx = idx + 1 } ---
|
|
178
|
+
case 'for_in_array': {
|
|
179
|
+
const idxName = `__forin_idx_${stmt.binding}`;
|
|
180
|
+
const initStmt = {
|
|
181
|
+
kind: 'let',
|
|
182
|
+
name: idxName,
|
|
183
|
+
type: { kind: 'named', name: 'int' },
|
|
184
|
+
init: { kind: 'int_lit', value: 0 },
|
|
185
|
+
span: stmt.span,
|
|
186
|
+
};
|
|
187
|
+
const bindingInit = {
|
|
188
|
+
kind: 'let',
|
|
189
|
+
name: stmt.binding,
|
|
190
|
+
type: undefined,
|
|
191
|
+
init: {
|
|
192
|
+
kind: 'index',
|
|
193
|
+
obj: { kind: 'ident', name: stmt.arrayName },
|
|
194
|
+
index: { kind: 'ident', name: idxName },
|
|
195
|
+
},
|
|
196
|
+
span: stmt.span,
|
|
197
|
+
};
|
|
198
|
+
const stepStmt = {
|
|
199
|
+
kind: 'expr',
|
|
200
|
+
expr: {
|
|
201
|
+
kind: 'assign',
|
|
202
|
+
target: idxName,
|
|
203
|
+
value: {
|
|
204
|
+
kind: 'binary',
|
|
205
|
+
op: '+',
|
|
206
|
+
left: { kind: 'ident', name: idxName },
|
|
207
|
+
right: { kind: 'int_lit', value: 1 },
|
|
208
|
+
},
|
|
209
|
+
},
|
|
210
|
+
span: stmt.span,
|
|
211
|
+
};
|
|
212
|
+
const body = [bindingInit, ...lowerBlock(stmt.body)];
|
|
213
|
+
const step = [stepStmt];
|
|
214
|
+
const whileStmt = {
|
|
215
|
+
kind: 'while',
|
|
216
|
+
cond: {
|
|
217
|
+
kind: 'binary',
|
|
218
|
+
op: '<',
|
|
219
|
+
left: { kind: 'ident', name: idxName },
|
|
220
|
+
right: lowerExpr(stmt.lenExpr),
|
|
221
|
+
},
|
|
222
|
+
body,
|
|
223
|
+
step,
|
|
224
|
+
span: stmt.span,
|
|
225
|
+
};
|
|
226
|
+
return [initStmt, whileStmt];
|
|
227
|
+
}
|
|
177
228
|
case 'foreach':
|
|
178
229
|
return {
|
|
179
230
|
kind: 'foreach',
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Execute-Store Peephole Pass — LIR optimization pass.
|
|
3
3
|
*
|
|
4
|
-
* Merges a `call_context` immediately followed by `score_set(dst, value)`
|
|
4
|
+
* Pattern 1: Merges a `call_context` immediately followed by `score_set(dst, value)`
|
|
5
5
|
* into a single `store_cmd_to_score` instruction:
|
|
6
6
|
*
|
|
7
7
|
* execute [subcommands] run function ns:fn ← call_context
|
|
@@ -11,11 +11,20 @@
|
|
|
11
11
|
*
|
|
12
12
|
* execute store result score $result __ns [subcommands] run function ns:fn
|
|
13
13
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* Pattern 2: Merges a `score_set(dst, 0)` immediately followed by a `raw` command
|
|
15
|
+
* of the form `execute <cond> run scoreboard players set $dst __ns 1`:
|
|
16
|
+
*
|
|
17
|
+
* scoreboard players set $dst __ns 0 ← score_set(dst, 0)
|
|
18
|
+
* execute <cond> run scoreboard players set $dst __ns 1 ← raw
|
|
19
|
+
*
|
|
20
|
+
* becomes:
|
|
21
|
+
*
|
|
22
|
+
* execute store success score $dst __ns <cond>
|
|
23
|
+
*
|
|
24
|
+
* This saves one command per boolean comparison (cmp instruction lowering).
|
|
16
25
|
*
|
|
17
26
|
* Safety: only merges when the two instructions are immediately adjacent
|
|
18
|
-
* (no instructions between them).
|
|
27
|
+
* (no instructions between them) and the destination slot is identical.
|
|
19
28
|
*/
|
|
20
29
|
import type { LIRFunction } from '../../lir/types';
|
|
21
30
|
export declare function execStorePeephole(fn: LIRFunction): LIRFunction;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Execute-Store Peephole Pass — LIR optimization pass.
|
|
4
4
|
*
|
|
5
|
-
* Merges a `call_context` immediately followed by `score_set(dst, value)`
|
|
5
|
+
* Pattern 1: Merges a `call_context` immediately followed by `score_set(dst, value)`
|
|
6
6
|
* into a single `store_cmd_to_score` instruction:
|
|
7
7
|
*
|
|
8
8
|
* execute [subcommands] run function ns:fn ← call_context
|
|
@@ -12,14 +12,33 @@
|
|
|
12
12
|
*
|
|
13
13
|
* execute store result score $result __ns [subcommands] run function ns:fn
|
|
14
14
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
15
|
+
* Pattern 2: Merges a `score_set(dst, 0)` immediately followed by a `raw` command
|
|
16
|
+
* of the form `execute <cond> run scoreboard players set $dst __ns 1`:
|
|
17
|
+
*
|
|
18
|
+
* scoreboard players set $dst __ns 0 ← score_set(dst, 0)
|
|
19
|
+
* execute <cond> run scoreboard players set $dst __ns 1 ← raw
|
|
20
|
+
*
|
|
21
|
+
* becomes:
|
|
22
|
+
*
|
|
23
|
+
* execute store success score $dst __ns <cond>
|
|
24
|
+
*
|
|
25
|
+
* This saves one command per boolean comparison (cmp instruction lowering).
|
|
17
26
|
*
|
|
18
27
|
* Safety: only merges when the two instructions are immediately adjacent
|
|
19
|
-
* (no instructions between them).
|
|
28
|
+
* (no instructions between them) and the destination slot is identical.
|
|
20
29
|
*/
|
|
21
30
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
31
|
exports.execStorePeephole = execStorePeephole;
|
|
32
|
+
/**
|
|
33
|
+
* Regex for Pattern 2's second instruction:
|
|
34
|
+
* execute (if|unless) score ... run scoreboard players set $X OBJ 1
|
|
35
|
+
*
|
|
36
|
+
* Captures:
|
|
37
|
+
* [1] the full condition part (everything before " run scoreboard ...")
|
|
38
|
+
* [2] the destination player ($X)
|
|
39
|
+
* [3] the destination objective
|
|
40
|
+
*/
|
|
41
|
+
const SET_ZERO_SET_ONE_RE = /^execute (.+) run scoreboard players set (\S+) (\S+) 1$/;
|
|
23
42
|
function execStorePeephole(fn) {
|
|
24
43
|
const instrs = fn.instructions;
|
|
25
44
|
if (instrs.length < 2)
|
|
@@ -30,7 +49,7 @@ function execStorePeephole(fn) {
|
|
|
30
49
|
while (i < instrs.length) {
|
|
31
50
|
const curr = instrs[i];
|
|
32
51
|
const next = instrs[i + 1];
|
|
33
|
-
// Pattern: call_context immediately followed by score_set
|
|
52
|
+
// Pattern 1: call_context immediately followed by score_set
|
|
34
53
|
if (next &&
|
|
35
54
|
curr.kind === 'call_context' &&
|
|
36
55
|
next.kind === 'score_set') {
|
|
@@ -44,6 +63,26 @@ function execStorePeephole(fn) {
|
|
|
44
63
|
i += 2;
|
|
45
64
|
continue;
|
|
46
65
|
}
|
|
66
|
+
// Pattern 2: score_set(dst, 0) + raw("execute <cond> run scoreboard players set $dst OBJ 1")
|
|
67
|
+
// → raw("execute store success score $dst OBJ <cond>")
|
|
68
|
+
if (next &&
|
|
69
|
+
curr.kind === 'score_set' &&
|
|
70
|
+
curr.value === 0 &&
|
|
71
|
+
next.kind === 'raw') {
|
|
72
|
+
const m = SET_ZERO_SET_ONE_RE.exec(next.cmd);
|
|
73
|
+
if (m &&
|
|
74
|
+
m[2] === curr.dst.player &&
|
|
75
|
+
m[3] === curr.dst.obj) {
|
|
76
|
+
const cond = m[1];
|
|
77
|
+
result.push({
|
|
78
|
+
kind: 'raw',
|
|
79
|
+
cmd: `execute store success score ${curr.dst.player} ${curr.dst.obj} ${cond}`,
|
|
80
|
+
});
|
|
81
|
+
changed = true;
|
|
82
|
+
i += 2;
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
47
86
|
result.push(curr);
|
|
48
87
|
i++;
|
|
49
88
|
}
|
package/dist/src/parser/index.js
CHANGED
|
@@ -721,6 +721,18 @@ class Parser {
|
|
|
721
721
|
return this.parseForRangeStmt(forToken);
|
|
722
722
|
}
|
|
723
723
|
this.expect('(');
|
|
724
|
+
// Detect for-in-array syntax: for ( let ident in ident , lenExpr ) { ... }
|
|
725
|
+
if (this.check('let') && this.peek(1).kind === 'ident' && this.peek(2).kind === 'in' && this.peek(3).kind === 'ident' && this.peek(4).kind === ',') {
|
|
726
|
+
this.advance(); // consume 'let'
|
|
727
|
+
const binding = this.expect('ident').value;
|
|
728
|
+
this.expect('in');
|
|
729
|
+
const arrayName = this.expect('ident').value;
|
|
730
|
+
this.expect(',');
|
|
731
|
+
const lenExpr = this.parseExpr();
|
|
732
|
+
this.expect(')');
|
|
733
|
+
const body = this.parseBlock();
|
|
734
|
+
return this.withLoc({ kind: 'for_in_array', binding, arrayName, lenExpr, body }, forToken);
|
|
735
|
+
}
|
|
724
736
|
// Init: either let statement (without semicolon) or empty
|
|
725
737
|
let init;
|
|
726
738
|
if (this.check('let')) {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "redscript-vscode",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.42",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "redscript-vscode",
|
|
9
|
-
"version": "1.2.
|
|
9
|
+
"version": "1.2.42",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"redscript": "file:../../",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
},
|
|
25
25
|
"../..": {
|
|
26
26
|
"name": "redscript-mc",
|
|
27
|
-
"version": "2.4.
|
|
27
|
+
"version": "2.4.1",
|
|
28
28
|
"license": "MIT",
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"vscode-languageserver": "^9.0.1",
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "redscript-vscode",
|
|
3
3
|
"displayName": "RedScript for Minecraft",
|
|
4
4
|
"description": "Syntax highlighting, error diagnostics, and language support for RedScript — a compiler targeting Minecraft Java Edition",
|
|
5
|
-
"version": "1.2.
|
|
5
|
+
"version": "1.2.42",
|
|
6
6
|
"publisher": "bkmashiro",
|
|
7
7
|
"icon": "icon.png",
|
|
8
8
|
"license": "MIT",
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
// math-demo.mcrs — Showcase of RedScript stdlib: math, easing, noise, physics
|
|
2
|
+
//
|
|
3
|
+
// Run:
|
|
4
|
+
// redscript compile examples/math-demo.mcrs --namespace mathdemo -o <datapack>
|
|
5
|
+
// In game: /function mathdemo:start
|
|
6
|
+
|
|
7
|
+
import "../src/stdlib/math.mcrs"
|
|
8
|
+
import "../src/stdlib/easing.mcrs"
|
|
9
|
+
import "../src/stdlib/noise.mcrs"
|
|
10
|
+
import "../src/stdlib/physics.mcrs"
|
|
11
|
+
import "../src/stdlib/vec.mcrs"
|
|
12
|
+
|
|
13
|
+
// ─── Load ──────────────────────────────────────────────────────────────────────
|
|
14
|
+
|
|
15
|
+
@load fn __load() {
|
|
16
|
+
scoreboard_add("mathdemo");
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
// ─── Math functions demo ───────────────────────────────────────────────────────
|
|
20
|
+
|
|
21
|
+
@keep fn demo_math() {
|
|
22
|
+
// Fixed-point math (×10000 scale)
|
|
23
|
+
let x: int = 20000; // 2.0
|
|
24
|
+
|
|
25
|
+
let l: int = ln(x); // ln(2.0) ≈ 6931
|
|
26
|
+
let s: int = sqrt_fx(x); // √2.0 ≈ 14142
|
|
27
|
+
let e: int = exp_fx(x); // e^2.0 ≈ 73891
|
|
28
|
+
|
|
29
|
+
say(f"§e-- Math Demo --");
|
|
30
|
+
say(f"ln(2.0) = {l} [expect 6931]");
|
|
31
|
+
say(f"sqrt(2.0) = {s} [expect 14142]");
|
|
32
|
+
say(f"exp(2.0) = {e} [expect 73891]");
|
|
33
|
+
|
|
34
|
+
let c: int = combinations(10, 3); // C(10,3) = 120
|
|
35
|
+
let f: int = factorial(6); // 6! = 720
|
|
36
|
+
say(f"C(10,3) = {c} [expect 120]");
|
|
37
|
+
say(f"6! = {f} [expect 720]");
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// ─── Easing demo ──────────────────────────────────────────────────────────────
|
|
41
|
+
|
|
42
|
+
@keep fn demo_easing() {
|
|
43
|
+
say(f"§e-- Easing Demo (t=5000 = midpoint) --");
|
|
44
|
+
let t: int = 5000; // t = 0.5 (midpoint of animation)
|
|
45
|
+
|
|
46
|
+
let lin: int = ease_linear(t);
|
|
47
|
+
let quad: int = ease_in_quad(t);
|
|
48
|
+
let cubic: int = ease_out_cubic(t);
|
|
49
|
+
let bounce: int = ease_out_bounce(t);
|
|
50
|
+
let back: int = ease_out_back(t);
|
|
51
|
+
|
|
52
|
+
say(f"linear: {lin} [expect 5000]");
|
|
53
|
+
say(f"in_quad: {quad} [expect 2500]");
|
|
54
|
+
say(f"out_cubic: {cubic} [expect 8750]");
|
|
55
|
+
say(f"out_bounce: {bounce}");
|
|
56
|
+
say(f"out_back: {back}");
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// ─── Noise demo ───────────────────────────────────────────────────────────────
|
|
60
|
+
|
|
61
|
+
@keep fn demo_noise() {
|
|
62
|
+
say(f"§e-- Noise Demo --");
|
|
63
|
+
|
|
64
|
+
// 1D value noise at a few positions
|
|
65
|
+
let n0: int = value_noise_1d(0);
|
|
66
|
+
let n1: int = value_noise_1d(25000); // x = 2.5
|
|
67
|
+
let n2: int = value_noise_1d(50000); // x = 5.0
|
|
68
|
+
|
|
69
|
+
say(f"noise1d(0.0) = {n0}");
|
|
70
|
+
say(f"noise1d(2.5) = {n1}");
|
|
71
|
+
say(f"noise1d(5.0) = {n2}");
|
|
72
|
+
|
|
73
|
+
// FBM terrain height
|
|
74
|
+
let h1: int = terrain_height(0, 0, 64, 20);
|
|
75
|
+
let h2: int = terrain_height(10, 5, 64, 20);
|
|
76
|
+
say(f"terrain(0,0) = {h1} blocks [base 64, amp 20]");
|
|
77
|
+
say(f"terrain(10,5) = {h2} blocks");
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// ─── Physics demo ─────────────────────────────────────────────────────────────
|
|
81
|
+
|
|
82
|
+
@keep fn demo_physics() {
|
|
83
|
+
say(f"§e-- Physics Demo --");
|
|
84
|
+
|
|
85
|
+
// Projectile: launched up with v0y = 200 (2.0 blocks/tick)
|
|
86
|
+
let v0y: int = 200;
|
|
87
|
+
let t_land: int = projectile_land_t(v0y);
|
|
88
|
+
let max_h: int = projectile_max_height(v0y);
|
|
89
|
+
|
|
90
|
+
say(f"Arrow launch: v0y={v0y} (2.0 bl/tick)");
|
|
91
|
+
say(f" Land time: {t_land} ticks [expect 50 ticks = 2.5 sec]");
|
|
92
|
+
say(f" Max height: {max_h} units = {max_h / 100} blocks");
|
|
93
|
+
|
|
94
|
+
// Simulate first 5 ticks
|
|
95
|
+
say(f" Y position (×100):");
|
|
96
|
+
let y: int = 0;
|
|
97
|
+
let t: int = 0;
|
|
98
|
+
while (t < 5) {
|
|
99
|
+
y = projectile_y(0, v0y, t);
|
|
100
|
+
say(f" t={t}: y={y}");
|
|
101
|
+
t = t + 1;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
// Spring: mass at 0, target at 10000, k=3000, damping=9500
|
|
105
|
+
say(f"Spring simulation (k=0.3, damp=0.95):");
|
|
106
|
+
let pos: int = 0;
|
|
107
|
+
let vel: int = 0;
|
|
108
|
+
let target: int = 10000;
|
|
109
|
+
let step: int = 0;
|
|
110
|
+
while (step < 5) {
|
|
111
|
+
vel = spring_update_v(vel, pos, target, 3000, 9500);
|
|
112
|
+
pos = update_pos(pos, vel);
|
|
113
|
+
say(f" step={step}: pos={pos} vel={vel}");
|
|
114
|
+
step = step + 1;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
// ─── Start (runs all demos) ────────────────────────────────────────────────────
|
|
119
|
+
|
|
120
|
+
@keep fn start() {
|
|
121
|
+
say(f"§6=== RedScript stdlib Math Demo ===");
|
|
122
|
+
demo_math();
|
|
123
|
+
demo_easing();
|
|
124
|
+
demo_noise();
|
|
125
|
+
demo_physics();
|
|
126
|
+
say(f"§6=== Done ===");
|
|
127
|
+
}
|
package/examples/showcase.mcrs
CHANGED
|
@@ -195,69 +195,47 @@ fn _tick_math() {
|
|
|
195
195
|
// ── Phase 2: BigInt ───────────────────────────────────────────────────────
|
|
196
196
|
|
|
197
197
|
fn _dump_bigint_phase() {
|
|
198
|
-
_section("BigInt —
|
|
199
|
-
|
|
200
|
-
say("§
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
let
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
say(
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
let
|
|
225
|
-
let
|
|
226
|
-
|
|
227
|
-
say(f" [
|
|
228
|
-
|
|
229
|
-
// BigInt multiplication: 999999999 × 999999999
|
|
230
|
-
say("§eBigInt Multiply:");
|
|
231
|
-
bigint_init();
|
|
232
|
-
bigint_from_int_a(999999999);
|
|
233
|
-
bigint_from_int_b(999999999);
|
|
234
|
-
bigint_mul();
|
|
235
|
-
let m2: int = bigint_get_c(2);
|
|
236
|
-
let m1: int = bigint_get_c(1);
|
|
237
|
-
let m0: int = bigint_get_c(0);
|
|
238
|
-
say(f" 999999999² = {m2}_{m1}_{m0}");
|
|
239
|
-
say(f" [= 999999998_000000001]");
|
|
240
|
-
|
|
241
|
-
// BigInt subtract
|
|
242
|
-
say("§eBigInt Subtract:");
|
|
243
|
-
bigint_init();
|
|
244
|
-
bigint_from_int_a(1000000000);
|
|
245
|
-
bigint_from_int_b(1);
|
|
246
|
-
bigint_sub();
|
|
247
|
-
let s0: int = bigint_get_c(0);
|
|
248
|
-
let s1: int = bigint_get_c(1);
|
|
249
|
-
say(f" 1,000,000,000 - 1 = {s1}_{s0} [= 999999999]");
|
|
198
|
+
_section("BigInt — Arbitrary Precision (base-10000 arrays)");
|
|
199
|
+
|
|
200
|
+
say("§eBigInt add: [9999,9999] + [0,1] = [1,0,0]");
|
|
201
|
+
// 9999_9999 + 1 = 1_0000_0000 (overflow into next chunk)
|
|
202
|
+
let a: int[] = [9999, 9999];
|
|
203
|
+
let b: int[] = [0, 1];
|
|
204
|
+
let r: int[] = [0, 0];
|
|
205
|
+
let carry: int = bigint_add(a, b, r, 2);
|
|
206
|
+
say(f" carry={carry} result=[{r[0]},{r[1]}] [expect carry=1 result=[0,0]]");
|
|
207
|
+
|
|
208
|
+
say("§eBigInt sub: [1,0] - [0,1] = [0,9999]");
|
|
209
|
+
// 1_0000 - 1 = 9999
|
|
210
|
+
let c: int[] = [1, 0];
|
|
211
|
+
let d: int[] = [0, 1];
|
|
212
|
+
let s: int[] = [0, 0];
|
|
213
|
+
bigint_sub(c, d, s, 2);
|
|
214
|
+
say(f" result=[{s[0]},{s[1]}] [expect [0,9999]]");
|
|
215
|
+
|
|
216
|
+
say("§eBigInt mul_small: [1,2345] × 3");
|
|
217
|
+
// 1_2345 × 3 = 3_7035
|
|
218
|
+
let e: int[] = [1, 2345];
|
|
219
|
+
let f: int[] = [0, 0];
|
|
220
|
+
bigint_mul_small(e, 3, f, 2);
|
|
221
|
+
say(f" result=[{f[0]},{f[1]}] [expect [3,7035]]");
|
|
222
|
+
|
|
223
|
+
say("§eBigInt cmp: [1,0] > [0,9999]");
|
|
224
|
+
let g: int[] = [1, 0];
|
|
225
|
+
let h: int[] = [0, 9999];
|
|
226
|
+
let cmp_result: int = bigint_cmp(g, h, 2);
|
|
227
|
+
say(f" cmp={cmp_result} [expect 1 (greater)]");
|
|
250
228
|
}
|
|
251
229
|
|
|
252
230
|
fn _tick_bigint_live() {
|
|
253
|
-
// Show
|
|
254
|
-
if (state.tick %
|
|
255
|
-
let
|
|
256
|
-
|
|
257
|
-
let
|
|
258
|
-
let
|
|
231
|
+
// Show counter with bigint add on actionbar
|
|
232
|
+
if (state.tick % 20 == 0) {
|
|
233
|
+
let counter: int[] = [0, state.tick / 20];
|
|
234
|
+
let one: int[] = [0, 1];
|
|
235
|
+
let r: int[] = [0, 0];
|
|
236
|
+
let carry: int = bigint_add(counter, one, r, 2);
|
|
259
237
|
foreach (p in @a[limit=1]) {
|
|
260
|
-
actionbar(p, f"§
|
|
238
|
+
actionbar(p, f"§dBigInt tick: [{r[0]},{r[1]}] carry={carry}");
|
|
261
239
|
}
|
|
262
240
|
}
|
|
263
241
|
}
|
|
@@ -436,56 +414,33 @@ fn dump_advanced() {
|
|
|
436
414
|
// ── BigInt step-by-step debug ─────────────────────────────────────────────
|
|
437
415
|
// /function showcase:debug_bigint
|
|
438
416
|
fn debug_bigint() {
|
|
439
|
-
say("§e=== BigInt Debug ===");
|
|
440
|
-
|
|
441
|
-
//
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
let
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
let
|
|
465
|
-
say(f"§7[
|
|
466
|
-
|
|
467
|
-
// Step 4: fib(5) = 5
|
|
468
|
-
bigint_fib(5);
|
|
469
|
-
let f5: int = bigint_get_a(0);
|
|
470
|
-
say(f"§7[4] fib(5) → get_a(0)={f5} (expect 5)");
|
|
471
|
-
|
|
472
|
-
// Step 5: fib(10) = 55
|
|
473
|
-
bigint_fib(10);
|
|
474
|
-
let f10: int = bigint_get_a(0);
|
|
475
|
-
say(f"§7[5] fib(10) → get_a(0)={f10} (expect 55)");
|
|
476
|
-
|
|
477
|
-
// Step 6: fib(20) = 6765
|
|
478
|
-
bigint_fib(20);
|
|
479
|
-
let f20: int = bigint_get_a(0);
|
|
480
|
-
say(f"§7[6] fib(20) → get_a(0)={f20} (expect 6765)");
|
|
481
|
-
|
|
482
|
-
// Step 7: manual add — bigint_add() writes via __ssi macro
|
|
483
|
-
bigint_init();
|
|
484
|
-
bigint_from_int_a(1);
|
|
485
|
-
bigint_from_int_b(1);
|
|
486
|
-
bigint_add();
|
|
487
|
-
let c0: int = bigint_get_c(0);
|
|
488
|
-
say(f"§7[7] 1+1=? get_c(0)={c0} (expect 2)");
|
|
417
|
+
say("§e=== BigInt Debug (v2.4+ array-by-ref API) ===");
|
|
418
|
+
|
|
419
|
+
// Test 1: add with carry
|
|
420
|
+
let a: int[] = [9999, 9999];
|
|
421
|
+
let b: int[] = [0, 1];
|
|
422
|
+
let r: int[] = [0, 0];
|
|
423
|
+
let carry: int = bigint_add(a, b, r, 2);
|
|
424
|
+
say(f"§7[1] 9999_9999 + 1: carry={carry} r=[{r[0]},{r[1]}] (expect carry=1 r=[0,0])");
|
|
425
|
+
|
|
426
|
+
// Test 2: subtract
|
|
427
|
+
let c: int[] = [1, 0];
|
|
428
|
+
let d: int[] = [0, 1];
|
|
429
|
+
let s: int[] = [0, 0];
|
|
430
|
+
bigint_sub(c, d, s, 2);
|
|
431
|
+
say(f"§7[2] 1_0000 - 1: s=[{s[0]},{s[1]}] (expect [0,9999])");
|
|
432
|
+
|
|
433
|
+
// Test 3: mul_small
|
|
434
|
+
let e: int[] = [1, 2345];
|
|
435
|
+
let f: int[] = [0, 0];
|
|
436
|
+
bigint_mul_small(e, 3, f, 2);
|
|
437
|
+
say(f"§7[3] 1_2345 × 3: f=[{f[0]},{f[1]}] (expect [3,7035])");
|
|
438
|
+
|
|
439
|
+
// Test 4: compare
|
|
440
|
+
let g: int[] = [1, 0];
|
|
441
|
+
let h: int[] = [0, 9999];
|
|
442
|
+
let cmp: int = bigint_cmp(g, h, 2);
|
|
443
|
+
say(f"§7[4] [1,0] vs [0,9999]: cmp={cmp} (expect 1 = greater)");
|
|
489
444
|
|
|
490
445
|
say("§a=== Done ===");
|
|
491
446
|
}
|
package/package.json
CHANGED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* E2E tests for the `for (let v in arr, len)` syntax sugar.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { compile } from '../../emit/compile'
|
|
6
|
+
|
|
7
|
+
function getFiles(files: { path: string; content: string }[]): string {
|
|
8
|
+
return files.map(f => f.content).join('\n')
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
describe('e2e: for-in-array syntax sugar', () => {
|
|
12
|
+
test('for in array basic compiles without error', () => {
|
|
13
|
+
const src = `
|
|
14
|
+
@keep fn test() {
|
|
15
|
+
let nums: int[] = [10, 20, 30];
|
|
16
|
+
let len: int = 3;
|
|
17
|
+
for (let v in nums, len) {
|
|
18
|
+
scoreboard_add("#sum", "test", v);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
`
|
|
22
|
+
expect(() => compile(src, { namespace: 'test' })).not.toThrow()
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
test('for in array generates dynamic index access (with storage)', () => {
|
|
26
|
+
const src = `
|
|
27
|
+
@keep fn test() {
|
|
28
|
+
let nums: int[] = [10, 20, 30];
|
|
29
|
+
let len: int = 3;
|
|
30
|
+
for (let v in nums, len) {
|
|
31
|
+
scoreboard_add("#sum", "test", v);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
`
|
|
35
|
+
const result = compile(src, { namespace: 'test' })
|
|
36
|
+
const allContent = getFiles(result.files)
|
|
37
|
+
expect(allContent).toContain('with storage')
|
|
38
|
+
})
|
|
39
|
+
|
|
40
|
+
test('for in array with len variable compiles', () => {
|
|
41
|
+
const src = `
|
|
42
|
+
@keep fn loop_sum(arr: int[], n: int): void {
|
|
43
|
+
for (let item in arr, n) {
|
|
44
|
+
scoreboard_add("#total", "obj", item);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
`
|
|
48
|
+
expect(() => compile(src, { namespace: 'test' })).not.toThrow()
|
|
49
|
+
})
|
|
50
|
+
|
|
51
|
+
test('for in array with literal len compiles', () => {
|
|
52
|
+
const src = `
|
|
53
|
+
@keep fn test() {
|
|
54
|
+
let data: int[] = [1, 2, 3, 4, 5];
|
|
55
|
+
for (let x in data, 5) {
|
|
56
|
+
scoreboard_add("#res", "test", x);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
`
|
|
60
|
+
expect(() => compile(src, { namespace: 'test' })).not.toThrow()
|
|
61
|
+
})
|
|
62
|
+
})
|