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.
Files changed (905) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +2 -0
  3. package/dist/data/mathdemo/function/__load.mcfunction +2 -0
  4. package/dist/data/mathdemo/function/_atan_init.mcfunction +4 -0
  5. package/dist/data/mathdemo/function/_math_init.mcfunction +4 -0
  6. package/dist/data/mathdemo/function/add2d_x.mcfunction +5 -0
  7. package/dist/data/mathdemo/function/add2d_y.mcfunction +5 -0
  8. package/dist/data/mathdemo/function/add3d_x.mcfunction +5 -0
  9. package/dist/data/mathdemo/function/add3d_y.mcfunction +5 -0
  10. package/dist/data/mathdemo/function/add3d_z.mcfunction +5 -0
  11. package/dist/data/mathdemo/function/air_drag_fx.mcfunction +2 -0
  12. package/dist/data/mathdemo/function/apply_drag.mcfunction +8 -0
  13. package/dist/data/mathdemo/function/apply_gravity.mcfunction +6 -0
  14. package/dist/data/mathdemo/function/approx_eq.mcfunction +10 -0
  15. package/dist/data/mathdemo/function/approx_eq__merge_1.mcfunction +3 -0
  16. package/dist/data/mathdemo/function/approx_eq__merge_3.mcfunction +2 -0
  17. package/dist/data/mathdemo/function/approx_eq__then_0.mcfunction +4 -0
  18. package/dist/data/mathdemo/function/approx_eq__then_2.mcfunction +2 -0
  19. package/dist/data/mathdemo/function/atan2_fixed.mcfunction +6 -0
  20. package/dist/data/mathdemo/function/atan2_fixed__else_30.mcfunction +2 -0
  21. package/dist/data/mathdemo/function/atan2_fixed__loop_body_26.mcfunction +21 -0
  22. package/dist/data/mathdemo/function/atan2_fixed__loop_exit_27.mcfunction +5 -0
  23. package/dist/data/mathdemo/function/atan2_fixed__loop_header_25.mcfunction +3 -0
  24. package/dist/data/mathdemo/function/atan2_fixed__merge_1.mcfunction +4 -0
  25. package/dist/data/mathdemo/function/atan2_fixed__merge_10.mcfunction +5 -0
  26. package/dist/data/mathdemo/function/atan2_fixed__merge_12.mcfunction +2 -0
  27. package/dist/data/mathdemo/function/atan2_fixed__merge_16.mcfunction +5 -0
  28. package/dist/data/mathdemo/function/atan2_fixed__merge_18.mcfunction +4 -0
  29. package/dist/data/mathdemo/function/atan2_fixed__merge_20.mcfunction +4 -0
  30. package/dist/data/mathdemo/function/atan2_fixed__merge_22.mcfunction +4 -0
  31. package/dist/data/mathdemo/function/atan2_fixed__merge_24.mcfunction +3 -0
  32. package/dist/data/mathdemo/function/atan2_fixed__merge_29.mcfunction +1 -0
  33. package/dist/data/mathdemo/function/atan2_fixed__merge_3.mcfunction +4 -0
  34. package/dist/data/mathdemo/function/atan2_fixed__merge_32.mcfunction +4 -0
  35. package/dist/data/mathdemo/function/atan2_fixed__merge_34.mcfunction +4 -0
  36. package/dist/data/mathdemo/function/atan2_fixed__merge_36.mcfunction +3 -0
  37. package/dist/data/mathdemo/function/atan2_fixed__merge_40.mcfunction +3 -0
  38. package/dist/data/mathdemo/function/atan2_fixed__merge_6.mcfunction +2 -0
  39. package/dist/data/mathdemo/function/atan2_fixed__then_0.mcfunction +4 -0
  40. package/dist/data/mathdemo/function/atan2_fixed__then_11.mcfunction +2 -0
  41. package/dist/data/mathdemo/function/atan2_fixed__then_15.mcfunction +4 -0
  42. package/dist/data/mathdemo/function/atan2_fixed__then_17.mcfunction +4 -0
  43. package/dist/data/mathdemo/function/atan2_fixed__then_19.mcfunction +2 -0
  44. package/dist/data/mathdemo/function/atan2_fixed__then_2.mcfunction +2 -0
  45. package/dist/data/mathdemo/function/atan2_fixed__then_21.mcfunction +2 -0
  46. package/dist/data/mathdemo/function/atan2_fixed__then_23.mcfunction +5 -0
  47. package/dist/data/mathdemo/function/atan2_fixed__then_28.mcfunction +4 -0
  48. package/dist/data/mathdemo/function/atan2_fixed__then_31.mcfunction +4 -0
  49. package/dist/data/mathdemo/function/atan2_fixed__then_33.mcfunction +4 -0
  50. package/dist/data/mathdemo/function/atan2_fixed__then_35.mcfunction +1 -0
  51. package/dist/data/mathdemo/function/atan2_fixed__then_39.mcfunction +3 -0
  52. package/dist/data/mathdemo/function/atan2_fixed__then_5.mcfunction +2 -0
  53. package/dist/data/mathdemo/function/atan2_fixed__then_9.mcfunction +4 -0
  54. package/dist/data/mathdemo/function/bounce_v.mcfunction +10 -0
  55. package/dist/data/mathdemo/function/cbrt_fx.mcfunction +5 -0
  56. package/dist/data/mathdemo/function/cbrt_fx__loop_body_6.mcfunction +7 -0
  57. package/dist/data/mathdemo/function/cbrt_fx__loop_exit_7.mcfunction +1 -0
  58. package/dist/data/mathdemo/function/cbrt_fx__loop_header_5.mcfunction +4 -0
  59. package/dist/data/mathdemo/function/cbrt_fx__merge_1.mcfunction +8 -0
  60. package/dist/data/mathdemo/function/cbrt_fx__merge_11.mcfunction +5 -0
  61. package/dist/data/mathdemo/function/cbrt_fx__merge_13.mcfunction +4 -0
  62. package/dist/data/mathdemo/function/cbrt_fx__merge_4.mcfunction +2 -0
  63. package/dist/data/mathdemo/function/cbrt_fx__merge_9.mcfunction +13 -0
  64. package/dist/data/mathdemo/function/cbrt_fx__then_0.mcfunction +2 -0
  65. package/dist/data/mathdemo/function/cbrt_fx__then_10.mcfunction +2 -0
  66. package/dist/data/mathdemo/function/cbrt_fx__then_12.mcfunction +2 -0
  67. package/dist/data/mathdemo/function/cbrt_fx__then_3.mcfunction +2 -0
  68. package/dist/data/mathdemo/function/cbrt_fx__then_8.mcfunction +2 -0
  69. package/dist/data/mathdemo/function/ceil_div.mcfunction +9 -0
  70. package/dist/data/mathdemo/function/chebyshev.mcfunction +14 -0
  71. package/dist/data/mathdemo/function/chebyshev3d.mcfunction +19 -0
  72. package/dist/data/mathdemo/function/chebyshev3d__merge_1.mcfunction +4 -0
  73. package/dist/data/mathdemo/function/chebyshev3d__merge_3.mcfunction +4 -0
  74. package/dist/data/mathdemo/function/chebyshev3d__merge_5.mcfunction +4 -0
  75. package/dist/data/mathdemo/function/chebyshev3d__merge_7.mcfunction +3 -0
  76. package/dist/data/mathdemo/function/chebyshev3d__merge_9.mcfunction +1 -0
  77. package/dist/data/mathdemo/function/chebyshev3d__then_0.mcfunction +4 -0
  78. package/dist/data/mathdemo/function/chebyshev3d__then_2.mcfunction +4 -0
  79. package/dist/data/mathdemo/function/chebyshev3d__then_4.mcfunction +4 -0
  80. package/dist/data/mathdemo/function/chebyshev3d__then_6.mcfunction +2 -0
  81. package/dist/data/mathdemo/function/chebyshev3d__then_8.mcfunction +2 -0
  82. package/dist/data/mathdemo/function/chebyshev__merge_1.mcfunction +4 -0
  83. package/dist/data/mathdemo/function/chebyshev__merge_3.mcfunction +3 -0
  84. package/dist/data/mathdemo/function/chebyshev__merge_5.mcfunction +1 -0
  85. package/dist/data/mathdemo/function/chebyshev__then_0.mcfunction +4 -0
  86. package/dist/data/mathdemo/function/chebyshev__then_2.mcfunction +4 -0
  87. package/dist/data/mathdemo/function/chebyshev__then_4.mcfunction +1 -0
  88. package/dist/data/mathdemo/function/circular_x.mcfunction +14 -0
  89. package/dist/data/mathdemo/function/circular_z.mcfunction +14 -0
  90. package/dist/data/mathdemo/function/clamp_velocity.mcfunction +5 -0
  91. package/dist/data/mathdemo/function/clamp_velocity__merge_1.mcfunction +5 -0
  92. package/dist/data/mathdemo/function/clamp_velocity__merge_4.mcfunction +1 -0
  93. package/dist/data/mathdemo/function/clamp_velocity__then_0.mcfunction +1 -0
  94. package/dist/data/mathdemo/function/clamp_velocity__then_3.mcfunction +3 -0
  95. package/dist/data/mathdemo/function/combinations.mcfunction +6 -0
  96. package/dist/data/mathdemo/function/combinations__loop_body_9.mcfunction +15 -0
  97. package/dist/data/mathdemo/function/combinations__loop_exit_10.mcfunction +1 -0
  98. package/dist/data/mathdemo/function/combinations__loop_header_8.mcfunction +3 -0
  99. package/dist/data/mathdemo/function/combinations__merge_1.mcfunction +3 -0
  100. package/dist/data/mathdemo/function/combinations__merge_4.mcfunction +6 -0
  101. package/dist/data/mathdemo/function/combinations__merge_7.mcfunction +3 -0
  102. package/dist/data/mathdemo/function/combinations__then_0.mcfunction +2 -0
  103. package/dist/data/mathdemo/function/combinations__then_3.mcfunction +2 -0
  104. package/dist/data/mathdemo/function/combinations__then_6.mcfunction +4 -0
  105. package/dist/data/mathdemo/function/cos_fixed.mcfunction +7 -0
  106. package/dist/data/mathdemo/function/cross2d.mcfunction +11 -0
  107. package/dist/data/mathdemo/function/cross3d_x.mcfunction +11 -0
  108. package/dist/data/mathdemo/function/cross3d_y.mcfunction +11 -0
  109. package/dist/data/mathdemo/function/cross3d_z.mcfunction +11 -0
  110. package/dist/data/mathdemo/function/demo_easing.mcfunction +12 -0
  111. package/dist/data/mathdemo/function/demo_math.mcfunction +16 -0
  112. package/dist/data/mathdemo/function/demo_noise.mcfunction +14 -0
  113. package/dist/data/mathdemo/function/demo_physics.mcfunction +11 -0
  114. package/dist/data/mathdemo/function/demo_physics__loop_body_1.mcfunction +9 -0
  115. package/dist/data/mathdemo/function/demo_physics__loop_body_4.mcfunction +18 -0
  116. package/dist/data/mathdemo/function/demo_physics__loop_exit_2.mcfunction +6 -0
  117. package/dist/data/mathdemo/function/demo_physics__loop_exit_5.mcfunction +1 -0
  118. package/dist/data/mathdemo/function/demo_physics__loop_header_0.mcfunction +4 -0
  119. package/dist/data/mathdemo/function/demo_physics__loop_header_3.mcfunction +4 -0
  120. package/dist/data/mathdemo/function/distance2d_fixed.mcfunction +13 -0
  121. package/dist/data/mathdemo/function/distance3d_fixed.mcfunction +18 -0
  122. package/dist/data/mathdemo/function/divfix.mcfunction +6 -0
  123. package/dist/data/mathdemo/function/divfix__merge_1.mcfunction +6 -0
  124. package/dist/data/mathdemo/function/divfix__then_0.mcfunction +2 -0
  125. package/dist/data/mathdemo/function/dot2d.mcfunction +11 -0
  126. package/dist/data/mathdemo/function/dot3d.mcfunction +17 -0
  127. package/dist/data/mathdemo/function/ease_in_back.mcfunction +26 -0
  128. package/dist/data/mathdemo/function/ease_in_bounce.mcfunction +9 -0
  129. package/dist/data/mathdemo/function/ease_in_cubic.mcfunction +12 -0
  130. package/dist/data/mathdemo/function/ease_in_expo.mcfunction +5 -0
  131. package/dist/data/mathdemo/function/ease_in_expo__merge_1.mcfunction +11 -0
  132. package/dist/data/mathdemo/function/ease_in_expo__then_0.mcfunction +2 -0
  133. package/dist/data/mathdemo/function/ease_in_out_back.mcfunction +5 -0
  134. package/dist/data/mathdemo/function/ease_in_out_back__merge_1.mcfunction +14 -0
  135. package/dist/data/mathdemo/function/ease_in_out_back__then_0.mcfunction +10 -0
  136. package/dist/data/mathdemo/function/ease_in_out_bounce.mcfunction +5 -0
  137. package/dist/data/mathdemo/function/ease_in_out_bounce__merge_1.mcfunction +14 -0
  138. package/dist/data/mathdemo/function/ease_in_out_bounce__then_0.mcfunction +10 -0
  139. package/dist/data/mathdemo/function/ease_in_out_cubic.mcfunction +5 -0
  140. package/dist/data/mathdemo/function/ease_in_out_cubic__merge_1.mcfunction +17 -0
  141. package/dist/data/mathdemo/function/ease_in_out_cubic__then_0.mcfunction +13 -0
  142. package/dist/data/mathdemo/function/ease_in_out_quad.mcfunction +5 -0
  143. package/dist/data/mathdemo/function/ease_in_out_quad__merge_1.mcfunction +12 -0
  144. package/dist/data/mathdemo/function/ease_in_out_quad__then_0.mcfunction +8 -0
  145. package/dist/data/mathdemo/function/ease_in_out_sine.mcfunction +5 -0
  146. package/dist/data/mathdemo/function/ease_in_out_sine__merge_1.mcfunction +14 -0
  147. package/dist/data/mathdemo/function/ease_in_out_sine__then_0.mcfunction +10 -0
  148. package/dist/data/mathdemo/function/ease_in_quad.mcfunction +7 -0
  149. package/dist/data/mathdemo/function/ease_in_quad__const_5000.mcfunction +5 -0
  150. package/dist/data/mathdemo/function/ease_in_quart.mcfunction +12 -0
  151. package/dist/data/mathdemo/function/ease_in_sine.mcfunction +30 -0
  152. package/dist/data/mathdemo/function/ease_linear.mcfunction +2 -0
  153. package/dist/data/mathdemo/function/ease_linear__const_5000.mcfunction +2 -0
  154. package/dist/data/mathdemo/function/ease_out_back.mcfunction +9 -0
  155. package/dist/data/mathdemo/function/ease_out_back__const_5000.mcfunction +7 -0
  156. package/dist/data/mathdemo/function/ease_out_bounce.mcfunction +6 -0
  157. package/dist/data/mathdemo/function/ease_out_bounce__merge_1.mcfunction +4 -0
  158. package/dist/data/mathdemo/function/ease_out_bounce__merge_4.mcfunction +4 -0
  159. package/dist/data/mathdemo/function/ease_out_bounce__merge_7.mcfunction +15 -0
  160. package/dist/data/mathdemo/function/ease_out_bounce__then_0.mcfunction +11 -0
  161. package/dist/data/mathdemo/function/ease_out_bounce__then_3.mcfunction +15 -0
  162. package/dist/data/mathdemo/function/ease_out_bounce__then_6.mcfunction +15 -0
  163. package/dist/data/mathdemo/function/ease_out_cubic.mcfunction +16 -0
  164. package/dist/data/mathdemo/function/ease_out_cubic__const_5000.mcfunction +14 -0
  165. package/dist/data/mathdemo/function/ease_out_expo.mcfunction +5 -0
  166. package/dist/data/mathdemo/function/ease_out_expo__merge_1.mcfunction +8 -0
  167. package/dist/data/mathdemo/function/ease_out_expo__then_0.mcfunction +2 -0
  168. package/dist/data/mathdemo/function/ease_out_quad.mcfunction +11 -0
  169. package/dist/data/mathdemo/function/ease_out_quart.mcfunction +16 -0
  170. package/dist/data/mathdemo/function/ease_out_sine.mcfunction +9 -0
  171. package/dist/data/mathdemo/function/ease_smooth.mcfunction +23 -0
  172. package/dist/data/mathdemo/function/ease_smoother.mcfunction +41 -0
  173. package/dist/data/mathdemo/function/exp_fx.mcfunction +16 -0
  174. package/dist/data/mathdemo/function/exp_fx__loop_body_10.mcfunction +8 -0
  175. package/dist/data/mathdemo/function/exp_fx__loop_body_5.mcfunction +8 -0
  176. package/dist/data/mathdemo/function/exp_fx__loop_exit_11.mcfunction +1 -0
  177. package/dist/data/mathdemo/function/exp_fx__loop_exit_6.mcfunction +1 -0
  178. package/dist/data/mathdemo/function/exp_fx__loop_header_4.mcfunction +3 -0
  179. package/dist/data/mathdemo/function/exp_fx__loop_header_9.mcfunction +3 -0
  180. package/dist/data/mathdemo/function/exp_fx__merge_1.mcfunction +47 -0
  181. package/dist/data/mathdemo/function/exp_fx__merge_3.mcfunction +4 -0
  182. package/dist/data/mathdemo/function/exp_fx__merge_8.mcfunction +1 -0
  183. package/dist/data/mathdemo/function/exp_fx__then_0.mcfunction +7 -0
  184. package/dist/data/mathdemo/function/exp_fx__then_2.mcfunction +2 -0
  185. package/dist/data/mathdemo/function/exp_fx__then_7.mcfunction +5 -0
  186. package/dist/data/mathdemo/function/factorial.mcfunction +5 -0
  187. package/dist/data/mathdemo/function/factorial__loop_body_4.mcfunction +7 -0
  188. package/dist/data/mathdemo/function/factorial__loop_exit_5.mcfunction +1 -0
  189. package/dist/data/mathdemo/function/factorial__loop_header_3.mcfunction +3 -0
  190. package/dist/data/mathdemo/function/factorial__merge_1.mcfunction +3 -0
  191. package/dist/data/mathdemo/function/factorial__then_0.mcfunction +2 -0
  192. package/dist/data/mathdemo/function/fbm_1d.mcfunction +9 -0
  193. package/dist/data/mathdemo/function/fbm_1d__loop_body_1.mcfunction +33 -0
  194. package/dist/data/mathdemo/function/fbm_1d__loop_exit_2.mcfunction +4 -0
  195. package/dist/data/mathdemo/function/fbm_1d__loop_header_0.mcfunction +3 -0
  196. package/dist/data/mathdemo/function/fbm_1d__merge_4.mcfunction +6 -0
  197. package/dist/data/mathdemo/function/fbm_1d__then_3.mcfunction +2 -0
  198. package/dist/data/mathdemo/function/fbm_2d.mcfunction +10 -0
  199. package/dist/data/mathdemo/function/fbm_2d__loop_body_1.mcfunction +39 -0
  200. package/dist/data/mathdemo/function/fbm_2d__loop_exit_2.mcfunction +4 -0
  201. package/dist/data/mathdemo/function/fbm_2d__loop_header_0.mcfunction +3 -0
  202. package/dist/data/mathdemo/function/fbm_2d__merge_4.mcfunction +6 -0
  203. package/dist/data/mathdemo/function/fbm_2d__then_3.mcfunction +2 -0
  204. package/dist/data/mathdemo/function/friction_decel.mcfunction +5 -0
  205. package/dist/data/mathdemo/function/friction_decel__merge_1.mcfunction +5 -0
  206. package/dist/data/mathdemo/function/friction_decel__merge_4.mcfunction +2 -0
  207. package/dist/data/mathdemo/function/friction_decel__then_0.mcfunction +3 -0
  208. package/dist/data/mathdemo/function/friction_decel__then_3.mcfunction +3 -0
  209. package/dist/data/mathdemo/function/gamma_int.mcfunction +5 -0
  210. package/dist/data/mathdemo/function/gamma_int__merge_1.mcfunction +6 -0
  211. package/dist/data/mathdemo/function/gamma_int__then_0.mcfunction +2 -0
  212. package/dist/data/mathdemo/function/gcd.mcfunction +7 -0
  213. package/dist/data/mathdemo/function/gcd__loop_body_5.mcfunction +5 -0
  214. package/dist/data/mathdemo/function/gcd__loop_exit_6.mcfunction +1 -0
  215. package/dist/data/mathdemo/function/gcd__loop_header_4.mcfunction +4 -0
  216. package/dist/data/mathdemo/function/gcd__merge_1.mcfunction +5 -0
  217. package/dist/data/mathdemo/function/gcd__merge_3.mcfunction +1 -0
  218. package/dist/data/mathdemo/function/gcd__then_0.mcfunction +4 -0
  219. package/dist/data/mathdemo/function/gcd__then_2.mcfunction +4 -0
  220. package/dist/data/mathdemo/function/gravity_fx.mcfunction +2 -0
  221. package/dist/data/mathdemo/function/hash_1d.mcfunction +15 -0
  222. package/dist/data/mathdemo/function/hash_1d_pos.mcfunction +9 -0
  223. package/dist/data/mathdemo/function/hash_1d_pos__merge_1.mcfunction +4 -0
  224. package/dist/data/mathdemo/function/hash_1d_pos__then_0.mcfunction +4 -0
  225. package/dist/data/mathdemo/function/hash_2d.mcfunction +11 -0
  226. package/dist/data/mathdemo/function/hash_2d_pos.mcfunction +11 -0
  227. package/dist/data/mathdemo/function/hash_2d_pos__merge_1.mcfunction +4 -0
  228. package/dist/data/mathdemo/function/hash_2d_pos__then_0.mcfunction +4 -0
  229. package/dist/data/mathdemo/function/impact_velocity.mcfunction +5 -0
  230. package/dist/data/mathdemo/function/impact_velocity__merge_1.mcfunction +16 -0
  231. package/dist/data/mathdemo/function/impact_velocity__then_0.mcfunction +2 -0
  232. package/dist/data/mathdemo/function/is_grounded.mcfunction +5 -0
  233. package/dist/data/mathdemo/function/is_grounded__merge_1.mcfunction +2 -0
  234. package/dist/data/mathdemo/function/is_grounded__then_0.mcfunction +2 -0
  235. package/dist/data/mathdemo/function/isqrt.mcfunction +5 -0
  236. package/dist/data/mathdemo/function/isqrt__loop_body_10.mcfunction +8 -0
  237. package/dist/data/mathdemo/function/isqrt__loop_body_13.mcfunction +11 -0
  238. package/dist/data/mathdemo/function/isqrt__loop_body_7.mcfunction +8 -0
  239. package/dist/data/mathdemo/function/isqrt__loop_exit_11.mcfunction +2 -0
  240. package/dist/data/mathdemo/function/isqrt__loop_exit_14.mcfunction +1 -0
  241. package/dist/data/mathdemo/function/isqrt__loop_exit_8.mcfunction +9 -0
  242. package/dist/data/mathdemo/function/isqrt__loop_header_12.mcfunction +4 -0
  243. package/dist/data/mathdemo/function/isqrt__loop_header_6.mcfunction +4 -0
  244. package/dist/data/mathdemo/function/isqrt__loop_header_9.mcfunction +3 -0
  245. package/dist/data/mathdemo/function/isqrt__merge_1.mcfunction +4 -0
  246. package/dist/data/mathdemo/function/isqrt__merge_16.mcfunction +5 -0
  247. package/dist/data/mathdemo/function/isqrt__merge_4.mcfunction +3 -0
  248. package/dist/data/mathdemo/function/isqrt__then_0.mcfunction +2 -0
  249. package/dist/data/mathdemo/function/isqrt__then_15.mcfunction +1 -0
  250. package/dist/data/mathdemo/function/isqrt__then_3.mcfunction +2 -0
  251. package/dist/data/mathdemo/function/lcm.mcfunction +11 -0
  252. package/dist/data/mathdemo/function/lcm__merge_1.mcfunction +5 -0
  253. package/dist/data/mathdemo/function/lcm__then_0.mcfunction +2 -0
  254. package/dist/data/mathdemo/function/length2d_fixed.mcfunction +15 -0
  255. package/dist/data/mathdemo/function/length3d_fixed.mcfunction +20 -0
  256. package/dist/data/mathdemo/function/lerp.mcfunction +13 -0
  257. package/dist/data/mathdemo/function/lerp2d_x.mcfunction +13 -0
  258. package/dist/data/mathdemo/function/lerp2d_y.mcfunction +13 -0
  259. package/dist/data/mathdemo/function/ln.mcfunction +9 -0
  260. package/dist/data/mathdemo/function/ln__loop_body_1.mcfunction +8 -0
  261. package/dist/data/mathdemo/function/ln__loop_body_4.mcfunction +8 -0
  262. package/dist/data/mathdemo/function/ln__loop_exit_2.mcfunction +1 -0
  263. package/dist/data/mathdemo/function/ln__loop_exit_5.mcfunction +37 -0
  264. package/dist/data/mathdemo/function/ln__loop_header_0.mcfunction +3 -0
  265. package/dist/data/mathdemo/function/ln__loop_header_3.mcfunction +6 -0
  266. package/dist/data/mathdemo/function/load.mcfunction +1 -0
  267. package/dist/data/mathdemo/function/log10_fx.mcfunction +11 -0
  268. package/dist/data/mathdemo/function/log2_fx.mcfunction +11 -0
  269. package/dist/data/mathdemo/function/log2_int.mcfunction +5 -0
  270. package/dist/data/mathdemo/function/log2_int__loop_body_4.mcfunction +8 -0
  271. package/dist/data/mathdemo/function/log2_int__loop_exit_5.mcfunction +1 -0
  272. package/dist/data/mathdemo/function/log2_int__loop_header_3.mcfunction +4 -0
  273. package/dist/data/mathdemo/function/log2_int__merge_1.mcfunction +3 -0
  274. package/dist/data/mathdemo/function/log2_int__then_0.mcfunction +2 -0
  275. package/dist/data/mathdemo/function/loga_fx.mcfunction +10 -0
  276. package/dist/data/mathdemo/function/loga_fx__merge_1.mcfunction +9 -0
  277. package/dist/data/mathdemo/function/loga_fx__then_0.mcfunction +2 -0
  278. package/dist/data/mathdemo/function/manhattan.mcfunction +14 -0
  279. package/dist/data/mathdemo/function/manhattan3d.mcfunction +19 -0
  280. package/dist/data/mathdemo/function/manhattan3d__merge_1.mcfunction +4 -0
  281. package/dist/data/mathdemo/function/manhattan3d__merge_3.mcfunction +4 -0
  282. package/dist/data/mathdemo/function/manhattan3d__merge_5.mcfunction +5 -0
  283. package/dist/data/mathdemo/function/manhattan3d__then_0.mcfunction +4 -0
  284. package/dist/data/mathdemo/function/manhattan3d__then_2.mcfunction +4 -0
  285. package/dist/data/mathdemo/function/manhattan3d__then_4.mcfunction +4 -0
  286. package/dist/data/mathdemo/function/manhattan__merge_1.mcfunction +4 -0
  287. package/dist/data/mathdemo/function/manhattan__merge_3.mcfunction +3 -0
  288. package/dist/data/mathdemo/function/manhattan__then_0.mcfunction +4 -0
  289. package/dist/data/mathdemo/function/manhattan__then_2.mcfunction +4 -0
  290. package/dist/data/mathdemo/function/map.mcfunction +12 -0
  291. package/dist/data/mathdemo/function/map__merge_1.mcfunction +11 -0
  292. package/dist/data/mathdemo/function/map__then_0.mcfunction +1 -0
  293. package/dist/data/mathdemo/function/mulfix.mcfunction +8 -0
  294. package/dist/data/mathdemo/function/neg2d_x.mcfunction +4 -0
  295. package/dist/data/mathdemo/function/neg2d_y.mcfunction +4 -0
  296. package/dist/data/mathdemo/function/neg3d_x.mcfunction +4 -0
  297. package/dist/data/mathdemo/function/neg3d_y.mcfunction +4 -0
  298. package/dist/data/mathdemo/function/neg3d_z.mcfunction +4 -0
  299. package/dist/data/mathdemo/function/normalize2d_x.mcfunction +11 -0
  300. package/dist/data/mathdemo/function/normalize2d_x__merge_1.mcfunction +6 -0
  301. package/dist/data/mathdemo/function/normalize2d_x__then_0.mcfunction +2 -0
  302. package/dist/data/mathdemo/function/normalize2d_y.mcfunction +11 -0
  303. package/dist/data/mathdemo/function/normalize2d_y__merge_1.mcfunction +6 -0
  304. package/dist/data/mathdemo/function/normalize2d_y__then_0.mcfunction +2 -0
  305. package/dist/data/mathdemo/function/pow_int.mcfunction +6 -0
  306. package/dist/data/mathdemo/function/pow_int__loop_body_4.mcfunction +7 -0
  307. package/dist/data/mathdemo/function/pow_int__loop_exit_5.mcfunction +1 -0
  308. package/dist/data/mathdemo/function/pow_int__loop_header_3.mcfunction +4 -0
  309. package/dist/data/mathdemo/function/pow_int__merge_1.mcfunction +4 -0
  310. package/dist/data/mathdemo/function/pow_int__merge_7.mcfunction +8 -0
  311. package/dist/data/mathdemo/function/pow_int__then_0.mcfunction +2 -0
  312. package/dist/data/mathdemo/function/pow_int__then_6.mcfunction +4 -0
  313. package/dist/data/mathdemo/function/projectile_land_t.mcfunction +5 -0
  314. package/dist/data/mathdemo/function/projectile_land_t__merge_1.mcfunction +7 -0
  315. package/dist/data/mathdemo/function/projectile_land_t__then_0.mcfunction +2 -0
  316. package/dist/data/mathdemo/function/projectile_max_height.mcfunction +10 -0
  317. package/dist/data/mathdemo/function/projectile_max_height__const_200.mcfunction +8 -0
  318. package/dist/data/mathdemo/function/projectile_vy.mcfunction +9 -0
  319. package/dist/data/mathdemo/function/projectile_x.mcfunction +8 -0
  320. package/dist/data/mathdemo/function/projectile_y.mcfunction +19 -0
  321. package/dist/data/mathdemo/function/quadratic_disc.mcfunction +12 -0
  322. package/dist/data/mathdemo/function/quadratic_x1.mcfunction +7 -0
  323. package/dist/data/mathdemo/function/quadratic_x1__merge_1.mcfunction +13 -0
  324. package/dist/data/mathdemo/function/quadratic_x1__merge_4.mcfunction +15 -0
  325. package/dist/data/mathdemo/function/quadratic_x1__then_0.mcfunction +2 -0
  326. package/dist/data/mathdemo/function/quadratic_x1__then_3.mcfunction +2 -0
  327. package/dist/data/mathdemo/function/quadratic_x2.mcfunction +7 -0
  328. package/dist/data/mathdemo/function/quadratic_x2__merge_1.mcfunction +13 -0
  329. package/dist/data/mathdemo/function/quadratic_x2__merge_4.mcfunction +15 -0
  330. package/dist/data/mathdemo/function/quadratic_x2__then_0.mcfunction +2 -0
  331. package/dist/data/mathdemo/function/quadratic_x2__then_3.mcfunction +2 -0
  332. package/dist/data/mathdemo/function/rotate2d_x.mcfunction +20 -0
  333. package/dist/data/mathdemo/function/rotate2d_y.mcfunction +20 -0
  334. package/dist/data/mathdemo/function/scale2d_x.mcfunction +8 -0
  335. package/dist/data/mathdemo/function/scale2d_y.mcfunction +8 -0
  336. package/dist/data/mathdemo/function/scale3d_x.mcfunction +8 -0
  337. package/dist/data/mathdemo/function/scale3d_y.mcfunction +8 -0
  338. package/dist/data/mathdemo/function/scale3d_z.mcfunction +8 -0
  339. package/dist/data/mathdemo/function/sign.mcfunction +5 -0
  340. package/dist/data/mathdemo/function/sign__merge_1.mcfunction +4 -0
  341. package/dist/data/mathdemo/function/sign__merge_4.mcfunction +2 -0
  342. package/dist/data/mathdemo/function/sign__then_0.mcfunction +2 -0
  343. package/dist/data/mathdemo/function/sign__then_3.mcfunction +2 -0
  344. package/dist/data/mathdemo/function/sin_fixed.mcfunction +9 -0
  345. package/dist/data/mathdemo/function/sin_fixed__merge_1.mcfunction +4 -0
  346. package/dist/data/mathdemo/function/sin_fixed__merge_3.mcfunction +4 -0
  347. package/dist/data/mathdemo/function/sin_fixed__merge_6.mcfunction +4 -0
  348. package/dist/data/mathdemo/function/sin_fixed__merge_9.mcfunction +10 -0
  349. package/dist/data/mathdemo/function/sin_fixed__then_0.mcfunction +4 -0
  350. package/dist/data/mathdemo/function/sin_fixed__then_2.mcfunction +6 -0
  351. package/dist/data/mathdemo/function/sin_fixed__then_5.mcfunction +8 -0
  352. package/dist/data/mathdemo/function/sin_fixed__then_8.mcfunction +10 -0
  353. package/dist/data/mathdemo/function/smootherstep.mcfunction +10 -0
  354. package/dist/data/mathdemo/function/smootherstep__merge_1.mcfunction +12 -0
  355. package/dist/data/mathdemo/function/smootherstep__merge_4.mcfunction +4 -0
  356. package/dist/data/mathdemo/function/smootherstep__merge_6.mcfunction +27 -0
  357. package/dist/data/mathdemo/function/smootherstep__then_0.mcfunction +2 -0
  358. package/dist/data/mathdemo/function/smootherstep__then_3.mcfunction +2 -0
  359. package/dist/data/mathdemo/function/smootherstep__then_5.mcfunction +2 -0
  360. package/dist/data/mathdemo/function/smoothstep.mcfunction +10 -0
  361. package/dist/data/mathdemo/function/smoothstep__merge_1.mcfunction +12 -0
  362. package/dist/data/mathdemo/function/smoothstep__merge_4.mcfunction +4 -0
  363. package/dist/data/mathdemo/function/smoothstep__merge_6.mcfunction +15 -0
  364. package/dist/data/mathdemo/function/smoothstep__then_0.mcfunction +2 -0
  365. package/dist/data/mathdemo/function/smoothstep__then_3.mcfunction +2 -0
  366. package/dist/data/mathdemo/function/smoothstep__then_5.mcfunction +2 -0
  367. package/dist/data/mathdemo/function/solve2x2_x.mcfunction +17 -0
  368. package/dist/data/mathdemo/function/solve2x2_x__merge_1.mcfunction +12 -0
  369. package/dist/data/mathdemo/function/solve2x2_x__then_0.mcfunction +2 -0
  370. package/dist/data/mathdemo/function/solve2x2_y.mcfunction +17 -0
  371. package/dist/data/mathdemo/function/solve2x2_y__merge_1.mcfunction +12 -0
  372. package/dist/data/mathdemo/function/solve2x2_y__then_0.mcfunction +2 -0
  373. package/dist/data/mathdemo/function/spring_force.mcfunction +11 -0
  374. package/dist/data/mathdemo/function/spring_update_v.mcfunction +18 -0
  375. package/dist/data/mathdemo/function/sqrt_fixed.mcfunction +8 -0
  376. package/dist/data/mathdemo/function/sqrt_fx.mcfunction +11 -0
  377. package/dist/data/mathdemo/function/sqrt_fx__const_20000.mcfunction +8 -0
  378. package/dist/data/mathdemo/function/start.mcfunction +6 -0
  379. package/dist/data/mathdemo/function/sub2d_x.mcfunction +5 -0
  380. package/dist/data/mathdemo/function/sub2d_y.mcfunction +5 -0
  381. package/dist/data/mathdemo/function/sub3d_x.mcfunction +5 -0
  382. package/dist/data/mathdemo/function/sub3d_y.mcfunction +5 -0
  383. package/dist/data/mathdemo/function/sub3d_z.mcfunction +5 -0
  384. package/dist/data/mathdemo/function/terrain_height.mcfunction +24 -0
  385. package/dist/data/mathdemo/function/terrain_height__const_0_0_64_20.mcfunction +17 -0
  386. package/dist/data/mathdemo/function/terrain_height__const_10_5_64_20.mcfunction +17 -0
  387. package/dist/data/mathdemo/function/update_pos.mcfunction +5 -0
  388. package/dist/data/mathdemo/function/value_noise_1d.mcfunction +13 -0
  389. package/dist/data/mathdemo/function/value_noise_1d__merge_1.mcfunction +39 -0
  390. package/dist/data/mathdemo/function/value_noise_1d__then_0.mcfunction +7 -0
  391. package/dist/data/mathdemo/function/value_noise_2d.mcfunction +14 -0
  392. package/dist/data/mathdemo/function/value_noise_2d__merge_1.mcfunction +12 -0
  393. package/dist/data/mathdemo/function/value_noise_2d__merge_3.mcfunction +98 -0
  394. package/dist/data/mathdemo/function/value_noise_2d__then_0.mcfunction +7 -0
  395. package/dist/data/mathdemo/function/value_noise_2d__then_2.mcfunction +7 -0
  396. package/dist/data/mathdemo/function/water_drag_fx.mcfunction +2 -0
  397. package/dist/data/minecraft/tags/function/load.json +2 -1
  398. package/dist/data/minecraft/tags/function/tick.json +1 -1
  399. package/dist/data/test/function/__dyn_idx_test_arrays_a.mcfunction +1 -0
  400. package/dist/data/test/function/__dyn_idx_test_arrays_b.mcfunction +1 -0
  401. package/dist/data/test/function/__dyn_idx_test_arrays_c.mcfunction +1 -0
  402. package/dist/data/test/function/__dyn_idx_test_arrays_counter.mcfunction +1 -0
  403. package/dist/data/test/function/__dyn_idx_test_arrays_d.mcfunction +1 -0
  404. package/dist/data/test/function/__dyn_idx_test_arrays_e.mcfunction +1 -0
  405. package/dist/data/test/function/__dyn_idx_test_arrays_g.mcfunction +1 -0
  406. package/dist/data/test/function/__dyn_idx_test_arrays_h.mcfunction +1 -0
  407. package/dist/data/test/function/__dyn_idx_test_arrays_one.mcfunction +1 -0
  408. package/dist/data/test/function/__dyn_wrt_test_arrays_f.mcfunction +1 -0
  409. package/dist/data/test/function/__dyn_wrt_test_arrays_r.mcfunction +1 -0
  410. package/dist/data/test/function/__dyn_wrt_test_arrays_s.mcfunction +1 -0
  411. package/dist/data/test/function/_apply.mcfunction +5 -0
  412. package/dist/data/test/function/_divider.mcfunction +1 -0
  413. package/dist/data/test/function/_dump_advanced_phase.mcfunction +4 -0
  414. package/dist/data/test/function/_dump_advanced_phase__loop_body_1.mcfunction +7 -0
  415. package/dist/data/test/function/_dump_advanced_phase__loop_body_6.mcfunction +10 -0
  416. package/dist/data/test/function/_dump_advanced_phase__loop_exit_2.mcfunction +20 -0
  417. package/dist/data/test/function/_dump_advanced_phase__loop_exit_7.mcfunction +12 -0
  418. package/dist/data/test/function/_dump_advanced_phase__loop_header_0.mcfunction +4 -0
  419. package/dist/data/test/function/_dump_advanced_phase__loop_header_5.mcfunction +4 -0
  420. package/dist/data/test/function/_dump_advanced_phase__merge_4.mcfunction +4 -0
  421. package/dist/data/test/function/_dump_advanced_phase__then_3.mcfunction +2 -0
  422. package/dist/data/test/function/_dump_bigint_phase.mcfunction +28 -0
  423. package/dist/data/test/function/_dump_math_phase.mcfunction +4 -0
  424. package/dist/data/test/function/_dump_math_phase__loop_body_1.mcfunction +9 -0
  425. package/dist/data/test/function/_dump_math_phase__loop_exit_2.mcfunction +18 -0
  426. package/dist/data/test/function/_dump_math_phase__loop_header_0.mcfunction +4 -0
  427. package/dist/data/test/function/_fp.mcfunction +2 -0
  428. package/dist/data/test/function/_next_phase.mcfunction +1 -0
  429. package/dist/data/test/function/_section.mcfunction +3 -0
  430. package/dist/data/test/function/_section__const_0.mcfunction +3 -0
  431. package/dist/data/test/function/_tick_advanced_live.mcfunction +5 -0
  432. package/dist/data/test/function/_tick_advanced_live__foreach_t12.mcfunction +1 -0
  433. package/dist/data/test/function/_tick_bigint_live.mcfunction +8 -0
  434. package/dist/data/test/function/_tick_bigint_live__foreach_t11.mcfunction +1 -0
  435. package/dist/data/test/function/_tick_math.mcfunction +9 -0
  436. package/dist/data/test/function/_tick_math__foreach_t12.mcfunction +1 -0
  437. package/dist/data/test/function/_tick_visual.mcfunction +11 -0
  438. package/dist/data/test/function/_tick_visual__foreach_t12.mcfunction +1 -0
  439. package/dist/data/test/function/_tick_visual__foreach_t16.mcfunction +8 -0
  440. package/dist/data/test/function/_tick_visual__foreach_t17.mcfunction +8 -0
  441. package/dist/data/test/function/_tick_visual__foreach_t21.mcfunction +1 -0
  442. package/dist/data/test/function/air_drag_fx.mcfunction +2 -0
  443. package/dist/data/test/function/angle_between.mcfunction +28 -0
  444. package/dist/data/test/function/angle_between__and_false_2.mcfunction +2 -0
  445. package/dist/data/test/function/angle_between__and_false_8.mcfunction +2 -0
  446. package/dist/data/test/function/angle_between__and_merge_1.mcfunction +2 -0
  447. package/dist/data/test/function/angle_between__and_merge_7.mcfunction +2 -0
  448. package/dist/data/test/function/angle_between__and_right_0.mcfunction +4 -0
  449. package/dist/data/test/function/angle_between__and_right_6.mcfunction +4 -0
  450. package/dist/data/test/function/angle_between__merge_10.mcfunction +26 -0
  451. package/dist/data/test/function/angle_between__merge_4.mcfunction +4 -0
  452. package/dist/data/test/function/angle_between__then_3.mcfunction +2 -0
  453. package/dist/data/test/function/angle_between__then_9.mcfunction +2 -0
  454. package/dist/data/test/function/apply_drag.mcfunction +8 -0
  455. package/dist/data/test/function/apply_gravity.mcfunction +6 -0
  456. package/dist/data/test/function/approx_eq.mcfunction +1 -2
  457. package/dist/data/test/function/approx_eq__merge_1.mcfunction +1 -2
  458. package/dist/data/test/function/atan2_fixed.mcfunction +1 -2
  459. package/dist/data/test/function/atan2_fixed__loop_body_26.mcfunction +1 -2
  460. package/dist/data/test/function/atan2_fixed__loop_exit_27.mcfunction +1 -2
  461. package/dist/data/test/function/atan2_fixed__loop_header_25.mcfunction +1 -2
  462. package/dist/data/test/function/atan2_fixed__merge_1.mcfunction +1 -2
  463. package/dist/data/test/function/atan2_fixed__merge_10.mcfunction +1 -2
  464. package/dist/data/test/function/atan2_fixed__merge_16.mcfunction +1 -2
  465. package/dist/data/test/function/atan2_fixed__merge_18.mcfunction +1 -2
  466. package/dist/data/test/function/atan2_fixed__merge_20.mcfunction +1 -2
  467. package/dist/data/test/function/atan2_fixed__merge_22.mcfunction +1 -2
  468. package/dist/data/test/function/atan2_fixed__merge_3.mcfunction +1 -2
  469. package/dist/data/test/function/atan2_fixed__merge_32.mcfunction +1 -2
  470. package/dist/data/test/function/atan2_fixed__merge_34.mcfunction +1 -2
  471. package/dist/data/test/function/atan2_fixed__then_0.mcfunction +1 -2
  472. package/dist/data/test/function/atan2_fixed__then_33.mcfunction +1 -2
  473. package/dist/data/test/function/atan2_fixed__then_9.mcfunction +1 -2
  474. package/dist/data/test/function/bezier_cubic.mcfunction +36 -0
  475. package/dist/data/test/function/bezier_quad.mcfunction +20 -0
  476. package/dist/data/test/function/bigint3_borrow_lo.mcfunction +1 -2
  477. package/dist/data/test/function/bigint3_borrow_mid.mcfunction +1 -2
  478. package/dist/data/test/function/bigint3_cmp.mcfunction +1 -2
  479. package/dist/data/test/function/bigint3_cmp__merge_1.mcfunction +1 -2
  480. package/dist/data/test/function/bigint3_cmp__merge_10.mcfunction +1 -2
  481. package/dist/data/test/function/bigint3_cmp__merge_13.mcfunction +1 -2
  482. package/dist/data/test/function/bigint3_cmp__merge_4.mcfunction +1 -2
  483. package/dist/data/test/function/bigint3_cmp__merge_7.mcfunction +1 -2
  484. package/dist/data/test/function/bigint3_sub_lo.mcfunction +1 -2
  485. package/dist/data/test/function/bigint3_sub_mid.mcfunction +1 -2
  486. package/dist/data/test/function/bigint_add.mcfunction +8 -0
  487. package/dist/data/test/function/bigint_add__arr_a__test_arrays__a__b__test_arrays__b__result__test_arrays__r.mcfunction +6 -0
  488. 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
  489. 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
  490. 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
  491. package/dist/data/test/function/bigint_add__arr_a__test_arrays__counter__b__test_arrays__one__result__test_arrays__r.mcfunction +6 -0
  492. 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
  493. 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
  494. 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
  495. package/dist/data/test/function/bigint_add__loop_body_1.mcfunction +12 -0
  496. package/dist/data/test/function/bigint_add__loop_exit_2.mcfunction +1 -0
  497. package/dist/data/test/function/bigint_add__loop_header_0.mcfunction +4 -0
  498. package/dist/data/test/function/bigint_cmp.mcfunction +5 -0
  499. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h.mcfunction +3 -0
  500. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__loop_body_1.mcfunction +7 -0
  501. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__loop_exit_2.mcfunction +2 -0
  502. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__loop_header_0.mcfunction +3 -0
  503. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__merge_4.mcfunction +7 -0
  504. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__merge_7.mcfunction +4 -0
  505. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__then_3.mcfunction +2 -0
  506. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__then_6.mcfunction +2 -0
  507. package/dist/data/test/function/bigint_cmp__loop_body_1.mcfunction +3 -0
  508. package/dist/data/test/function/bigint_cmp__loop_exit_2.mcfunction +2 -0
  509. package/dist/data/test/function/bigint_cmp__loop_header_0.mcfunction +3 -0
  510. package/dist/data/test/function/bigint_cmp__merge_4.mcfunction +3 -0
  511. package/dist/data/test/function/bigint_cmp__merge_7.mcfunction +4 -0
  512. package/dist/data/test/function/bigint_cmp__then_3.mcfunction +2 -0
  513. package/dist/data/test/function/bigint_cmp__then_6.mcfunction +2 -0
  514. package/dist/data/test/function/bigint_copy.mcfunction +3 -0
  515. package/dist/data/test/function/bigint_copy__loop_body_1.mcfunction +4 -0
  516. package/dist/data/test/function/bigint_copy__loop_exit_2.mcfunction +1 -0
  517. package/dist/data/test/function/bigint_copy__loop_header_0.mcfunction +3 -0
  518. package/dist/data/test/function/bigint_is_zero.mcfunction +4 -0
  519. package/dist/data/test/function/bigint_is_zero__loop_body_1.mcfunction +4 -0
  520. package/dist/data/test/function/bigint_is_zero__loop_exit_2.mcfunction +2 -0
  521. package/dist/data/test/function/bigint_is_zero__loop_header_0.mcfunction +3 -0
  522. package/dist/data/test/function/bigint_is_zero__merge_4.mcfunction +4 -0
  523. package/dist/data/test/function/bigint_is_zero__then_3.mcfunction +2 -0
  524. package/dist/data/test/function/bigint_leading_zeros.mcfunction +5 -0
  525. package/dist/data/test/function/bigint_leading_zeros__loop_body_1.mcfunction +4 -0
  526. package/dist/data/test/function/bigint_leading_zeros__loop_exit_2.mcfunction +1 -0
  527. package/dist/data/test/function/bigint_leading_zeros__loop_header_0.mcfunction +3 -0
  528. package/dist/data/test/function/bigint_leading_zeros__merge_4.mcfunction +9 -0
  529. package/dist/data/test/function/bigint_leading_zeros__then_3.mcfunction +1 -0
  530. package/dist/data/test/function/bigint_mul_small.mcfunction +8 -0
  531. package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f.mcfunction +7 -0
  532. package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f__loop_body_1.mcfunction +20 -0
  533. package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f__loop_exit_2.mcfunction +1 -0
  534. package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f__loop_header_0.mcfunction +4 -0
  535. package/dist/data/test/function/bigint_mul_small__loop_body_1.mcfunction +12 -0
  536. package/dist/data/test/function/bigint_mul_small__loop_exit_2.mcfunction +1 -0
  537. package/dist/data/test/function/bigint_mul_small__loop_header_0.mcfunction +4 -0
  538. package/dist/data/test/function/bigint_shift_left.mcfunction +3 -0
  539. package/dist/data/test/function/bigint_shift_left__loop_body_1.mcfunction +4 -0
  540. package/dist/data/test/function/bigint_shift_left__loop_exit_2.mcfunction +1 -0
  541. package/dist/data/test/function/bigint_shift_left__loop_header_0.mcfunction +5 -0
  542. package/dist/data/test/function/bigint_sub.mcfunction +8 -0
  543. package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s.mcfunction +6 -0
  544. 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
  545. 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
  546. 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
  547. 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
  548. 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
  549. 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
  550. 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
  551. package/dist/data/test/function/bigint_sub__loop_body_1.mcfunction +9 -0
  552. package/dist/data/test/function/bigint_sub__loop_exit_2.mcfunction +1 -0
  553. package/dist/data/test/function/bigint_sub__loop_header_0.mcfunction +4 -0
  554. package/dist/data/test/function/bigint_sub__merge_4.mcfunction +4 -0
  555. package/dist/data/test/function/bigint_sub__merge_6.mcfunction +4 -0
  556. package/dist/data/test/function/bigint_sub__then_3.mcfunction +5 -0
  557. package/dist/data/test/function/bigint_sub__then_5.mcfunction +2 -0
  558. package/dist/data/test/function/bigint_zero.mcfunction +3 -0
  559. package/dist/data/test/function/bigint_zero__loop_body_1.mcfunction +4 -0
  560. package/dist/data/test/function/bigint_zero__loop_exit_2.mcfunction +1 -0
  561. package/dist/data/test/function/bigint_zero__loop_header_0.mcfunction +3 -0
  562. package/dist/data/test/function/billboard_y.mcfunction +7 -0
  563. package/dist/data/test/function/bounce_v.mcfunction +10 -0
  564. package/dist/data/test/function/cbrt_fx.mcfunction +1 -2
  565. package/dist/data/test/function/cbrt_fx__loop_body_6.mcfunction +1 -2
  566. package/dist/data/test/function/cbrt_fx__loop_header_5.mcfunction +1 -2
  567. package/dist/data/test/function/cbrt_fx__merge_1.mcfunction +1 -2
  568. package/dist/data/test/function/cbrt_fx__merge_11.mcfunction +1 -2
  569. package/dist/data/test/function/cbrt_fx__merge_9.mcfunction +1 -2
  570. package/dist/data/test/function/chebyshev.mcfunction +1 -2
  571. package/dist/data/test/function/chebyshev3d.mcfunction +1 -2
  572. package/dist/data/test/function/chebyshev3d__merge_1.mcfunction +1 -2
  573. package/dist/data/test/function/chebyshev3d__merge_3.mcfunction +1 -2
  574. package/dist/data/test/function/chebyshev3d__merge_5.mcfunction +1 -2
  575. package/dist/data/test/function/chebyshev3d__merge_7.mcfunction +1 -2
  576. package/dist/data/test/function/chebyshev__merge_1.mcfunction +1 -2
  577. package/dist/data/test/function/chebyshev__merge_3.mcfunction +1 -2
  578. package/dist/data/test/function/circular_x.mcfunction +14 -0
  579. package/dist/data/test/function/circular_z.mcfunction +14 -0
  580. package/dist/data/test/function/clamp_circle_x.mcfunction +13 -0
  581. package/dist/data/test/function/clamp_circle_x__merge_1.mcfunction +10 -0
  582. package/dist/data/test/function/clamp_circle_x__then_0.mcfunction +1 -0
  583. package/dist/data/test/function/clamp_circle_y.mcfunction +13 -0
  584. package/dist/data/test/function/clamp_circle_y__merge_1.mcfunction +10 -0
  585. package/dist/data/test/function/clamp_circle_y__then_0.mcfunction +1 -0
  586. package/dist/data/test/function/clamp_velocity.mcfunction +5 -0
  587. package/dist/data/test/function/clamp_velocity__merge_1.mcfunction +5 -0
  588. package/dist/data/test/function/clamp_velocity__merge_4.mcfunction +1 -0
  589. package/dist/data/test/function/clamp_velocity__then_0.mcfunction +1 -0
  590. package/dist/data/test/function/clamp_velocity__then_3.mcfunction +3 -0
  591. package/dist/data/test/function/collatz_steps.mcfunction +5 -0
  592. package/dist/data/test/function/collatz_steps__else_8.mcfunction +6 -0
  593. package/dist/data/test/function/collatz_steps__loop_body_4.mcfunction +7 -0
  594. package/dist/data/test/function/collatz_steps__loop_exit_5.mcfunction +1 -0
  595. package/dist/data/test/function/collatz_steps__loop_header_3.mcfunction +4 -0
  596. package/dist/data/test/function/collatz_steps__merge_1.mcfunction +3 -0
  597. package/dist/data/test/function/collatz_steps__merge_7.mcfunction +4 -0
  598. package/dist/data/test/function/collatz_steps__then_0.mcfunction +2 -0
  599. package/dist/data/test/function/collatz_steps__then_6.mcfunction +5 -0
  600. package/dist/data/test/function/combinations.mcfunction +1 -2
  601. package/dist/data/test/function/combinations__loop_header_8.mcfunction +1 -2
  602. package/dist/data/test/function/combinations__merge_1.mcfunction +1 -2
  603. package/dist/data/test/function/combinations__merge_4.mcfunction +1 -2
  604. package/dist/data/test/function/cos_fixed__const_0.mcfunction +5 -0
  605. package/dist/data/test/function/count_digits.mcfunction +6 -0
  606. package/dist/data/test/function/count_digits__loop_body_6.mcfunction +8 -0
  607. package/dist/data/test/function/count_digits__loop_exit_7.mcfunction +1 -0
  608. package/dist/data/test/function/count_digits__loop_header_5.mcfunction +4 -0
  609. package/dist/data/test/function/count_digits__merge_1.mcfunction +4 -0
  610. package/dist/data/test/function/count_digits__merge_3.mcfunction +2 -0
  611. package/dist/data/test/function/count_digits__then_0.mcfunction +4 -0
  612. package/dist/data/test/function/count_digits__then_2.mcfunction +2 -0
  613. package/dist/data/test/function/debug_bigint.mcfunction +25 -0
  614. package/dist/data/test/function/digit_sum.mcfunction +6 -0
  615. package/dist/data/test/function/digit_sum__loop_body_6.mcfunction +11 -0
  616. package/dist/data/test/function/digit_sum__loop_exit_7.mcfunction +1 -0
  617. package/dist/data/test/function/digit_sum__loop_header_5.mcfunction +4 -0
  618. package/dist/data/test/function/digit_sum__merge_1.mcfunction +4 -0
  619. package/dist/data/test/function/digit_sum__merge_3.mcfunction +2 -0
  620. package/dist/data/test/function/digit_sum__then_0.mcfunction +4 -0
  621. package/dist/data/test/function/digit_sum__then_2.mcfunction +2 -0
  622. package/dist/data/test/function/digital_root.mcfunction +5 -0
  623. package/dist/data/test/function/digital_root__merge_1.mcfunction +8 -0
  624. package/dist/data/test/function/digital_root__merge_4.mcfunction +1 -0
  625. package/dist/data/test/function/digital_root__then_0.mcfunction +2 -0
  626. package/dist/data/test/function/digital_root__then_3.mcfunction +2 -0
  627. package/dist/data/test/function/divfix.mcfunction +1 -2
  628. package/dist/data/test/function/dump_advanced.mcfunction +1 -0
  629. package/dist/data/test/function/dump_bigint.mcfunction +1 -0
  630. package/dist/data/test/function/dump_math.mcfunction +1 -0
  631. package/dist/data/test/function/ease_in_back.mcfunction +26 -0
  632. package/dist/data/test/function/ease_in_bounce.mcfunction +9 -0
  633. package/dist/data/test/function/ease_in_cubic.mcfunction +12 -0
  634. package/dist/data/test/function/ease_in_expo.mcfunction +6 -0
  635. package/dist/data/test/function/ease_in_expo__merge_1.mcfunction +11 -0
  636. package/dist/data/test/function/ease_in_expo__then_0.mcfunction +2 -0
  637. package/dist/data/test/function/ease_in_out_back.mcfunction +6 -0
  638. package/dist/data/test/function/ease_in_out_back__merge_1.mcfunction +14 -0
  639. package/dist/data/test/function/ease_in_out_back__then_0.mcfunction +10 -0
  640. package/dist/data/test/function/ease_in_out_bounce.mcfunction +6 -0
  641. package/dist/data/test/function/ease_in_out_bounce__merge_1.mcfunction +14 -0
  642. package/dist/data/test/function/ease_in_out_bounce__then_0.mcfunction +10 -0
  643. package/dist/data/test/function/ease_in_out_cubic.mcfunction +6 -0
  644. package/dist/data/test/function/ease_in_out_cubic__merge_1.mcfunction +17 -0
  645. package/dist/data/test/function/ease_in_out_cubic__then_0.mcfunction +13 -0
  646. package/dist/data/test/function/ease_in_out_quad.mcfunction +6 -0
  647. package/dist/data/test/function/ease_in_out_quad__merge_1.mcfunction +12 -0
  648. package/dist/data/test/function/ease_in_out_quad__then_0.mcfunction +8 -0
  649. package/dist/data/test/function/ease_in_out_sine.mcfunction +6 -0
  650. package/dist/data/test/function/ease_in_out_sine__merge_1.mcfunction +14 -0
  651. package/dist/data/test/function/ease_in_out_sine__then_0.mcfunction +10 -0
  652. package/dist/data/test/function/ease_in_quad.mcfunction +7 -0
  653. package/dist/data/test/function/ease_in_quart.mcfunction +12 -0
  654. package/dist/data/test/function/ease_in_sine.mcfunction +30 -0
  655. package/dist/data/test/function/ease_linear.mcfunction +2 -0
  656. package/dist/data/test/function/ease_out_back.mcfunction +9 -0
  657. package/dist/data/test/function/ease_out_bounce.mcfunction +7 -0
  658. package/dist/data/test/function/ease_out_bounce__merge_1.mcfunction +5 -0
  659. package/dist/data/test/function/ease_out_bounce__merge_4.mcfunction +5 -0
  660. package/dist/data/test/function/ease_out_bounce__merge_7.mcfunction +15 -0
  661. package/dist/data/test/function/ease_out_bounce__then_0.mcfunction +11 -0
  662. package/dist/data/test/function/ease_out_bounce__then_3.mcfunction +15 -0
  663. package/dist/data/test/function/ease_out_bounce__then_6.mcfunction +15 -0
  664. package/dist/data/test/function/ease_out_cubic.mcfunction +16 -0
  665. package/dist/data/test/function/ease_out_expo.mcfunction +6 -0
  666. package/dist/data/test/function/ease_out_expo__merge_1.mcfunction +8 -0
  667. package/dist/data/test/function/ease_out_expo__then_0.mcfunction +2 -0
  668. package/dist/data/test/function/ease_out_quad.mcfunction +11 -0
  669. package/dist/data/test/function/ease_out_quart.mcfunction +16 -0
  670. package/dist/data/test/function/ease_out_sine.mcfunction +9 -0
  671. package/dist/data/test/function/ease_smooth.mcfunction +23 -0
  672. package/dist/data/test/function/ease_smoother.mcfunction +41 -0
  673. package/dist/data/test/function/exp_fx.mcfunction +1 -2
  674. package/dist/data/test/function/exp_fx__loop_header_4.mcfunction +1 -2
  675. package/dist/data/test/function/exp_fx__loop_header_9.mcfunction +1 -2
  676. package/dist/data/test/function/exp_fx__merge_1.mcfunction +1 -2
  677. package/dist/data/test/function/exp_fx__merge_3.mcfunction +1 -2
  678. package/dist/data/test/function/factorial.mcfunction +1 -2
  679. package/dist/data/test/function/factorial__loop_header_3.mcfunction +1 -2
  680. package/dist/data/test/function/fbm_1d.mcfunction +9 -0
  681. package/dist/data/test/function/fbm_1d__loop_body_1.mcfunction +33 -0
  682. package/dist/data/test/function/fbm_1d__loop_exit_2.mcfunction +5 -0
  683. package/dist/data/test/function/fbm_1d__loop_header_0.mcfunction +4 -0
  684. package/dist/data/test/function/fbm_1d__merge_4.mcfunction +6 -0
  685. package/dist/data/test/function/fbm_1d__then_3.mcfunction +2 -0
  686. package/dist/data/test/function/fbm_2d.mcfunction +10 -0
  687. package/dist/data/test/function/fbm_2d__loop_body_1.mcfunction +39 -0
  688. package/dist/data/test/function/fbm_2d__loop_exit_2.mcfunction +5 -0
  689. package/dist/data/test/function/fbm_2d__loop_header_0.mcfunction +4 -0
  690. package/dist/data/test/function/fbm_2d__merge_4.mcfunction +6 -0
  691. package/dist/data/test/function/fbm_2d__then_3.mcfunction +2 -0
  692. package/dist/data/test/function/fib.mcfunction +5 -0
  693. package/dist/data/test/function/fib__loop_body_7.mcfunction +8 -0
  694. package/dist/data/test/function/fib__loop_exit_8.mcfunction +1 -0
  695. package/dist/data/test/function/fib__loop_header_6.mcfunction +3 -0
  696. package/dist/data/test/function/fib__merge_1.mcfunction +4 -0
  697. package/dist/data/test/function/fib__merge_4.mcfunction +4 -0
  698. package/dist/data/test/function/fib__then_0.mcfunction +2 -0
  699. package/dist/data/test/function/fib__then_3.mcfunction +2 -0
  700. package/dist/data/test/function/friction_decel.mcfunction +5 -0
  701. package/dist/data/test/function/friction_decel__merge_1.mcfunction +5 -0
  702. package/dist/data/test/function/friction_decel__merge_4.mcfunction +2 -0
  703. package/dist/data/test/function/friction_decel__then_0.mcfunction +3 -0
  704. package/dist/data/test/function/friction_decel__then_3.mcfunction +3 -0
  705. package/dist/data/test/function/gamma_int.mcfunction +1 -2
  706. package/dist/data/test/function/gcd.mcfunction +1 -2
  707. package/dist/data/test/function/gcd__loop_header_4.mcfunction +1 -2
  708. package/dist/data/test/function/gcd__merge_1.mcfunction +1 -2
  709. package/dist/data/test/function/gravity_fx.mcfunction +2 -0
  710. package/dist/data/test/function/hash_1d.mcfunction +15 -0
  711. package/dist/data/test/function/hash_1d_pos.mcfunction +10 -0
  712. package/dist/data/test/function/hash_1d_pos__merge_1.mcfunction +4 -0
  713. package/dist/data/test/function/hash_1d_pos__then_0.mcfunction +4 -0
  714. package/dist/data/test/function/hash_2d.mcfunction +11 -0
  715. package/dist/data/test/function/hash_2d_pos.mcfunction +12 -0
  716. package/dist/data/test/function/hash_2d_pos__merge_1.mcfunction +4 -0
  717. package/dist/data/test/function/hash_2d_pos__then_0.mcfunction +4 -0
  718. package/dist/data/test/function/hash_int.mcfunction +6 -0
  719. package/dist/data/test/function/hash_int__merge_1.mcfunction +14 -0
  720. package/dist/data/test/function/hash_int__merge_3.mcfunction +14 -0
  721. package/dist/data/test/function/hash_int__merge_5.mcfunction +1 -0
  722. package/dist/data/test/function/hash_int__then_0.mcfunction +4 -0
  723. package/dist/data/test/function/hash_int__then_2.mcfunction +4 -0
  724. package/dist/data/test/function/hash_int__then_4.mcfunction +4 -0
  725. package/dist/data/test/function/impact_velocity.mcfunction +5 -0
  726. package/dist/data/test/function/impact_velocity__merge_1.mcfunction +16 -0
  727. package/dist/data/test/function/impact_velocity__then_0.mcfunction +2 -0
  728. package/dist/data/test/function/int32_to_bigint3_hi.mcfunction +1 -2
  729. package/dist/data/test/function/int32_to_bigint3_lo.mcfunction +1 -2
  730. package/dist/data/test/function/int32_to_bigint3_mid.mcfunction +1 -2
  731. package/dist/data/test/function/is_grounded.mcfunction +5 -0
  732. package/dist/data/test/function/is_grounded__merge_1.mcfunction +2 -0
  733. package/dist/data/test/function/is_grounded__then_0.mcfunction +2 -0
  734. package/dist/data/test/function/is_prime.mcfunction +5 -0
  735. package/dist/data/test/function/is_prime__loop_body_10.mcfunction +6 -0
  736. package/dist/data/test/function/is_prime__loop_exit_11.mcfunction +2 -0
  737. package/dist/data/test/function/is_prime__loop_header_9.mcfunction +5 -0
  738. package/dist/data/test/function/is_prime__merge_1.mcfunction +4 -0
  739. package/dist/data/test/function/is_prime__merge_13.mcfunction +4 -0
  740. package/dist/data/test/function/is_prime__merge_4.mcfunction +7 -0
  741. package/dist/data/test/function/is_prime__merge_7.mcfunction +2 -0
  742. package/dist/data/test/function/is_prime__then_0.mcfunction +2 -0
  743. package/dist/data/test/function/is_prime__then_12.mcfunction +2 -0
  744. package/dist/data/test/function/is_prime__then_3.mcfunction +2 -0
  745. package/dist/data/test/function/is_prime__then_6.mcfunction +2 -0
  746. package/dist/data/test/function/isqrt.mcfunction +1 -2
  747. package/dist/data/test/function/isqrt__loop_body_13.mcfunction +1 -2
  748. package/dist/data/test/function/isqrt__loop_header_12.mcfunction +1 -2
  749. package/dist/data/test/function/isqrt__loop_header_6.mcfunction +1 -2
  750. package/dist/data/test/function/isqrt__loop_header_9.mcfunction +1 -2
  751. package/dist/data/test/function/isqrt__merge_1.mcfunction +1 -2
  752. package/dist/data/test/function/julia_iter.mcfunction +9 -0
  753. package/dist/data/test/function/julia_iter__loop_body_1.mcfunction +36 -0
  754. package/dist/data/test/function/julia_iter__loop_exit_2.mcfunction +1 -0
  755. package/dist/data/test/function/julia_iter__loop_header_0.mcfunction +3 -0
  756. package/dist/data/test/function/julia_iter__merge_4.mcfunction +4 -0
  757. package/dist/data/test/function/julia_iter__then_3.mcfunction +1 -0
  758. package/dist/data/test/function/lambda_demo.mcfunction +2 -0
  759. package/dist/data/test/function/lcm.mcfunction +1 -2
  760. package/dist/data/test/function/lerp_angle.mcfunction +7 -0
  761. package/dist/data/test/function/lerp_angle__loop_body_1.mcfunction +4 -0
  762. package/dist/data/test/function/lerp_angle__loop_body_4.mcfunction +4 -0
  763. package/dist/data/test/function/lerp_angle__loop_exit_2.mcfunction +1 -0
  764. package/dist/data/test/function/lerp_angle__loop_exit_5.mcfunction +8 -0
  765. package/dist/data/test/function/lerp_angle__loop_header_0.mcfunction +4 -0
  766. package/dist/data/test/function/lerp_angle__loop_header_3.mcfunction +3 -0
  767. package/dist/data/test/function/ln__loop_header_0.mcfunction +1 -2
  768. package/dist/data/test/function/ln__loop_header_3.mcfunction +1 -2
  769. package/dist/data/test/function/log2_int.mcfunction +1 -2
  770. package/dist/data/test/function/log2_int__loop_header_3.mcfunction +1 -2
  771. package/dist/data/test/function/loga_fx.mcfunction +1 -2
  772. package/dist/data/test/function/mandelbrot_iter.mcfunction +7 -0
  773. package/dist/data/test/function/mandelbrot_iter__loop_body_1.mcfunction +36 -0
  774. package/dist/data/test/function/mandelbrot_iter__loop_exit_2.mcfunction +1 -0
  775. package/dist/data/test/function/mandelbrot_iter__loop_header_0.mcfunction +3 -0
  776. package/dist/data/test/function/mandelbrot_iter__merge_4.mcfunction +4 -0
  777. package/dist/data/test/function/mandelbrot_iter__then_3.mcfunction +1 -0
  778. package/dist/data/test/function/manhattan.mcfunction +1 -2
  779. package/dist/data/test/function/manhattan3d.mcfunction +1 -2
  780. package/dist/data/test/function/manhattan3d__merge_1.mcfunction +1 -2
  781. package/dist/data/test/function/manhattan3d__merge_3.mcfunction +1 -2
  782. package/dist/data/test/function/manhattan__merge_1.mcfunction +1 -2
  783. package/dist/data/test/function/map.mcfunction +1 -2
  784. package/dist/data/test/function/mod_pow.mcfunction +7 -0
  785. package/dist/data/test/function/mod_pow__loop_body_6.mcfunction +7 -0
  786. package/dist/data/test/function/mod_pow__loop_exit_7.mcfunction +1 -0
  787. package/dist/data/test/function/mod_pow__loop_header_5.mcfunction +4 -0
  788. package/dist/data/test/function/mod_pow__merge_1.mcfunction +8 -0
  789. package/dist/data/test/function/mod_pow__merge_4.mcfunction +2 -0
  790. package/dist/data/test/function/mod_pow__merge_9.mcfunction +10 -0
  791. package/dist/data/test/function/mod_pow__then_0.mcfunction +2 -0
  792. package/dist/data/test/function/mod_pow__then_3.mcfunction +4 -0
  793. package/dist/data/test/function/mod_pow__then_8.mcfunction +6 -0
  794. package/dist/data/test/function/newton_sqrt.mcfunction +5 -0
  795. package/dist/data/test/function/newton_sqrt__loop_body_7.mcfunction +10 -0
  796. package/dist/data/test/function/newton_sqrt__loop_exit_8.mcfunction +1 -0
  797. package/dist/data/test/function/newton_sqrt__loop_header_6.mcfunction +3 -0
  798. package/dist/data/test/function/newton_sqrt__merge_1.mcfunction +4 -0
  799. package/dist/data/test/function/newton_sqrt__merge_4.mcfunction +6 -0
  800. package/dist/data/test/function/newton_sqrt__then_0.mcfunction +2 -0
  801. package/dist/data/test/function/newton_sqrt__then_3.mcfunction +2 -0
  802. package/dist/data/test/function/noise1d.mcfunction +13 -0
  803. package/dist/data/test/function/noise1d__merge_1.mcfunction +20 -0
  804. package/dist/data/test/function/noise1d__merge_3.mcfunction +4 -0
  805. package/dist/data/test/function/noise1d__merge_5.mcfunction +11 -0
  806. package/dist/data/test/function/noise1d__then_0.mcfunction +7 -0
  807. package/dist/data/test/function/noise1d__then_2.mcfunction +4 -0
  808. package/dist/data/test/function/noise1d__then_4.mcfunction +4 -0
  809. package/dist/data/test/function/normalize2d_x.mcfunction +1 -2
  810. package/dist/data/test/function/normalize2d_y.mcfunction +1 -2
  811. package/dist/data/test/function/pow_int.mcfunction +1 -2
  812. package/dist/data/test/function/pow_int__loop_body_4.mcfunction +1 -2
  813. package/dist/data/test/function/pow_int__loop_header_3.mcfunction +1 -2
  814. package/dist/data/test/function/projectile_land_t.mcfunction +5 -0
  815. package/dist/data/test/function/projectile_land_t__merge_1.mcfunction +7 -0
  816. package/dist/data/test/function/projectile_land_t__then_0.mcfunction +2 -0
  817. package/dist/data/test/function/projectile_max_height.mcfunction +10 -0
  818. package/dist/data/test/function/projectile_vy.mcfunction +9 -0
  819. package/dist/data/test/function/projectile_x.mcfunction +8 -0
  820. package/dist/data/test/function/projectile_y.mcfunction +19 -0
  821. package/dist/data/test/function/ptimer/new.mcfunction +3 -0
  822. package/dist/data/test/function/ptimer/reset.mcfunction +1 -0
  823. package/dist/data/test/function/ptimer/tick.mcfunction +8 -0
  824. package/dist/data/test/function/ptimer/tick__merge_1.mcfunction +2 -0
  825. package/dist/data/test/function/ptimer/tick__then_0.mcfunction +3 -0
  826. package/dist/data/test/function/quadratic_x1.mcfunction +1 -2
  827. package/dist/data/test/function/quadratic_x1__merge_1.mcfunction +1 -2
  828. package/dist/data/test/function/quadratic_x2.mcfunction +1 -2
  829. package/dist/data/test/function/quadratic_x2__merge_1.mcfunction +1 -2
  830. package/dist/data/test/function/quat_cos_half.mcfunction +8 -0
  831. package/dist/data/test/function/quat_sin_half.mcfunction +8 -0
  832. package/dist/data/test/function/reverse_int.mcfunction +7 -0
  833. package/dist/data/test/function/reverse_int__loop_body_3.mcfunction +14 -0
  834. package/dist/data/test/function/reverse_int__loop_exit_4.mcfunction +4 -0
  835. package/dist/data/test/function/reverse_int__loop_header_2.mcfunction +4 -0
  836. package/dist/data/test/function/reverse_int__merge_1.mcfunction +2 -0
  837. package/dist/data/test/function/reverse_int__merge_6.mcfunction +1 -0
  838. package/dist/data/test/function/reverse_int__then_0.mcfunction +5 -0
  839. package/dist/data/test/function/reverse_int__then_5.mcfunction +3 -0
  840. package/dist/data/test/function/rotate_x_y.mcfunction +28 -0
  841. package/dist/data/test/function/rotate_x_z.mcfunction +28 -0
  842. package/dist/data/test/function/rotate_y_x.mcfunction +28 -0
  843. package/dist/data/test/function/rotate_y_z.mcfunction +30 -0
  844. package/dist/data/test/function/scale_x.mcfunction +8 -0
  845. package/dist/data/test/function/scale_y.mcfunction +8 -0
  846. package/dist/data/test/function/scale_z.mcfunction +8 -0
  847. package/dist/data/test/function/showcase_load.mcfunction +4 -0
  848. package/dist/data/test/function/showcase_tick.mcfunction +1 -0
  849. package/dist/data/test/function/sign.mcfunction +1 -2
  850. package/dist/data/test/function/sign__merge_1.mcfunction +1 -2
  851. package/dist/data/test/function/sin_fixed.mcfunction +1 -2
  852. package/dist/data/test/function/sin_fixed__merge_1.mcfunction +1 -2
  853. package/dist/data/test/function/sin_fixed__merge_3.mcfunction +1 -2
  854. package/dist/data/test/function/sin_fixed__merge_6.mcfunction +1 -2
  855. package/dist/data/test/function/smootherstep.mcfunction +1 -2
  856. package/dist/data/test/function/smootherstep__merge_1.mcfunction +1 -2
  857. package/dist/data/test/function/smootherstep__merge_4.mcfunction +1 -2
  858. package/dist/data/test/function/smoothstep.mcfunction +1 -2
  859. package/dist/data/test/function/smoothstep__merge_1.mcfunction +1 -2
  860. package/dist/data/test/function/smoothstep__merge_4.mcfunction +1 -2
  861. package/dist/data/test/function/solve2x2_x.mcfunction +1 -2
  862. package/dist/data/test/function/solve2x2_y.mcfunction +1 -2
  863. package/dist/data/test/function/spiral_ring.mcfunction +5 -0
  864. package/dist/data/test/function/spiral_ring__merge_1.mcfunction +13 -0
  865. package/dist/data/test/function/spiral_ring__then_0.mcfunction +2 -0
  866. package/dist/data/test/function/spring_force.mcfunction +11 -0
  867. package/dist/data/test/function/spring_update_v.mcfunction +18 -0
  868. package/dist/data/test/function/start.mcfunction +8 -0
  869. package/dist/data/test/function/stop.mcfunction +2 -0
  870. package/dist/data/test/function/stop__foreach_t0.mcfunction +1 -0
  871. package/dist/data/test/function/terrain_height.mcfunction +24 -0
  872. package/dist/data/test/function/uniform_scale.mcfunction +8 -0
  873. package/dist/data/test/function/update_pos.mcfunction +5 -0
  874. package/dist/data/test/function/value_noise_1d.mcfunction +14 -0
  875. package/dist/data/test/function/value_noise_1d__merge_1.mcfunction +39 -0
  876. package/dist/data/test/function/value_noise_1d__then_0.mcfunction +7 -0
  877. package/dist/data/test/function/value_noise_2d.mcfunction +15 -0
  878. package/dist/data/test/function/value_noise_2d__merge_1.mcfunction +13 -0
  879. package/dist/data/test/function/value_noise_2d__merge_3.mcfunction +98 -0
  880. package/dist/data/test/function/value_noise_2d__then_0.mcfunction +7 -0
  881. package/dist/data/test/function/value_noise_2d__then_2.mcfunction +7 -0
  882. package/dist/data/test/function/water_drag_fx.mcfunction +2 -0
  883. package/dist/pack.mcmeta +1 -1
  884. package/dist/src/__tests__/optimizer/lir/peephole.test.js +92 -0
  885. package/dist/src/ast/types.d.ts +7 -0
  886. package/dist/src/hir/lower.js +51 -0
  887. package/dist/src/optimizer/lir/peephole.d.ts +13 -4
  888. package/dist/src/optimizer/lir/peephole.js +44 -5
  889. package/dist/src/parser/index.js +12 -0
  890. package/editors/vscode/package-lock.json +3 -3
  891. package/editors/vscode/package.json +1 -1
  892. package/examples/math-demo.mcrs +127 -0
  893. package/examples/showcase.mcrs +64 -109
  894. package/package.json +1 -1
  895. package/src/__tests__/e2e/for-in-array.test.ts +62 -0
  896. package/src/__tests__/optimizer/lir/peephole.test.ts +100 -0
  897. package/src/ast/types.ts +1 -0
  898. package/src/hir/lower.ts +52 -0
  899. package/src/optimizer/lir/peephole.ts +50 -5
  900. package/src/parser/index.ts +13 -0
  901. package/src/stdlib/bigint.mcrs +128 -100
  902. package/src/stdlib/easing.mcrs +182 -0
  903. package/src/stdlib/matrix.mcrs +108 -0
  904. package/src/stdlib/noise.mcrs +153 -0
  905. package/src/stdlib/physics.mcrs +134 -0
@@ -1,6 +1,5 @@
1
1
  scoreboard players operation $sign_t0 __test = $p0 __test
2
2
  scoreboard players set $__const_0 __test 0
3
- scoreboard players set $sign_t1 __test 0
4
- execute if score $sign_t0 __test > $__const_0 __test run scoreboard players set $sign_t1 __test 1
3
+ execute store success score $sign_t1 __test if score $sign_t0 __test > $__const_0 __test
5
4
  execute if score $sign_t1 __test matches 1 run return run function test:sign__then_0
6
5
  function test:sign__merge_1
@@ -1,5 +1,4 @@
1
1
  scoreboard players set $__const_0 __test 0
2
- scoreboard players set $sign_t2 __test 0
3
- execute if score $sign_t0 __test < $__const_0 __test run scoreboard players set $sign_t2 __test 1
2
+ execute store success score $sign_t2 __test if score $sign_t0 __test < $__const_0 __test
4
3
  execute if score $sign_t2 __test matches 1 run return run function test:sign__then_3
5
4
  function test:sign__merge_4
@@ -4,7 +4,6 @@ scoreboard players set $__const_360 __test 360
4
4
  scoreboard players operation $sin_fixed_t1 __test %= $__const_360 __test
5
5
  scoreboard players operation $sin_fixed_t2 __test = $sin_fixed_t1 __test
6
6
  scoreboard players set $__const_0 __test 0
7
- scoreboard players set $sin_fixed_t3 __test 0
8
- execute if score $sin_fixed_t1 __test < $__const_0 __test run scoreboard players set $sin_fixed_t3 __test 1
7
+ execute store success score $sin_fixed_t3 __test if score $sin_fixed_t1 __test < $__const_0 __test
9
8
  execute if score $sin_fixed_t3 __test matches 1 run return run function test:sin_fixed__then_0
10
9
  function test:sin_fixed__merge_1
@@ -1,5 +1,4 @@
1
1
  scoreboard players set $__const_90 __test 90
2
- scoreboard players set $sin_fixed_t5 __test 0
3
- execute if score $sin_fixed_t2 __test <= $__const_90 __test run scoreboard players set $sin_fixed_t5 __test 1
2
+ execute store success score $sin_fixed_t5 __test if score $sin_fixed_t2 __test <= $__const_90 __test
4
3
  execute if score $sin_fixed_t5 __test matches 1 run return run function test:sin_fixed__then_2
5
4
  function test:sin_fixed__merge_3
@@ -1,5 +1,4 @@
1
1
  scoreboard players set $__const_180 __test 180
2
- scoreboard players set $sin_fixed_t9 __test 0
3
- execute if score $sin_fixed_t2 __test <= $__const_180 __test run scoreboard players set $sin_fixed_t9 __test 1
2
+ execute store success score $sin_fixed_t9 __test if score $sin_fixed_t2 __test <= $__const_180 __test
4
3
  execute if score $sin_fixed_t9 __test matches 1 run return run function test:sin_fixed__then_5
5
4
  function test:sin_fixed__merge_6
@@ -1,5 +1,4 @@
1
1
  scoreboard players set $__const_270 __test 270
2
- scoreboard players set $sin_fixed_t14 __test 0
3
- execute if score $sin_fixed_t2 __test <= $__const_270 __test run scoreboard players set $sin_fixed_t14 __test 1
2
+ execute store success score $sin_fixed_t14 __test if score $sin_fixed_t2 __test <= $__const_270 __test
4
3
  execute if score $sin_fixed_t14 __test matches 1 run return run function test:sin_fixed__then_8
5
4
  function test:sin_fixed__merge_9
@@ -5,7 +5,6 @@ scoreboard players operation $smootherstep_t3 __test = $smootherstep_t1 __test
5
5
  scoreboard players operation $smootherstep_t3 __test -= $smootherstep_t0 __test
6
6
  scoreboard players operation $smootherstep_t4 __test = $smootherstep_t3 __test
7
7
  scoreboard players set $__const_0 __test 0
8
- scoreboard players set $smootherstep_t5 __test 0
9
- execute if score $smootherstep_t3 __test = $__const_0 __test run scoreboard players set $smootherstep_t5 __test 1
8
+ execute store success score $smootherstep_t5 __test if score $smootherstep_t3 __test = $__const_0 __test
10
9
  execute if score $smootherstep_t5 __test matches 1 run return run function test:smootherstep__then_0
11
10
  function test:smootherstep__merge_1
@@ -7,7 +7,6 @@ scoreboard players operation $smootherstep_t8 __test = $smootherstep_t7 __test
7
7
  scoreboard players operation $smootherstep_t8 __test /= $smootherstep_t4 __test
8
8
  scoreboard players operation $smootherstep_t9 __test = $smootherstep_t8 __test
9
9
  scoreboard players set $__const_0 __test 0
10
- scoreboard players set $smootherstep_t10 __test 0
11
- execute if score $smootherstep_t8 __test < $__const_0 __test run scoreboard players set $smootherstep_t10 __test 1
10
+ execute store success score $smootherstep_t10 __test if score $smootherstep_t8 __test < $__const_0 __test
12
11
  execute if score $smootherstep_t10 __test matches 1 run return run function test:smootherstep__then_3
13
12
  function test:smootherstep__merge_4
@@ -1,5 +1,4 @@
1
1
  scoreboard players set $__const_1000 __test 1000
2
- scoreboard players set $smootherstep_t11 __test 0
3
- execute if score $smootherstep_t9 __test > $__const_1000 __test run scoreboard players set $smootherstep_t11 __test 1
2
+ execute store success score $smootherstep_t11 __test if score $smootherstep_t9 __test > $__const_1000 __test
4
3
  execute if score $smootherstep_t11 __test matches 1 run return run function test:smootherstep__then_5
5
4
  function test:smootherstep__merge_6
@@ -5,7 +5,6 @@ scoreboard players operation $smoothstep_t3 __test = $smoothstep_t1 __test
5
5
  scoreboard players operation $smoothstep_t3 __test -= $smoothstep_t0 __test
6
6
  scoreboard players operation $smoothstep_t4 __test = $smoothstep_t3 __test
7
7
  scoreboard players set $__const_0 __test 0
8
- scoreboard players set $smoothstep_t5 __test 0
9
- execute if score $smoothstep_t3 __test = $__const_0 __test run scoreboard players set $smoothstep_t5 __test 1
8
+ execute store success score $smoothstep_t5 __test if score $smoothstep_t3 __test = $__const_0 __test
10
9
  execute if score $smoothstep_t5 __test matches 1 run return run function test:smoothstep__then_0
11
10
  function test:smoothstep__merge_1
@@ -7,7 +7,6 @@ scoreboard players operation $smoothstep_t8 __test = $smoothstep_t7 __test
7
7
  scoreboard players operation $smoothstep_t8 __test /= $smoothstep_t4 __test
8
8
  scoreboard players operation $smoothstep_t9 __test = $smoothstep_t8 __test
9
9
  scoreboard players set $__const_0 __test 0
10
- scoreboard players set $smoothstep_t10 __test 0
11
- execute if score $smoothstep_t8 __test < $__const_0 __test run scoreboard players set $smoothstep_t10 __test 1
10
+ execute store success score $smoothstep_t10 __test if score $smoothstep_t8 __test < $__const_0 __test
12
11
  execute if score $smoothstep_t10 __test matches 1 run return run function test:smoothstep__then_3
13
12
  function test:smoothstep__merge_4
@@ -1,5 +1,4 @@
1
1
  scoreboard players set $__const_1000 __test 1000
2
- scoreboard players set $smoothstep_t11 __test 0
3
- execute if score $smoothstep_t9 __test > $__const_1000 __test run scoreboard players set $smoothstep_t11 __test 1
2
+ execute store success score $smoothstep_t11 __test if score $smoothstep_t9 __test > $__const_1000 __test
4
3
  execute if score $smoothstep_t11 __test matches 1 run return run function test:smoothstep__then_5
5
4
  function test:smoothstep__merge_6
@@ -12,7 +12,6 @@ scoreboard players operation $solve2x2_x_t8 __test = $solve2x2_x_t6 __test
12
12
  scoreboard players operation $solve2x2_x_t8 __test -= $solve2x2_x_t7 __test
13
13
  scoreboard players operation $solve2x2_x_t9 __test = $solve2x2_x_t8 __test
14
14
  scoreboard players set $__const_0 __test 0
15
- scoreboard players set $solve2x2_x_t10 __test 0
16
- execute if score $solve2x2_x_t8 __test = $__const_0 __test run scoreboard players set $solve2x2_x_t10 __test 1
15
+ execute store success score $solve2x2_x_t10 __test if score $solve2x2_x_t8 __test = $__const_0 __test
17
16
  execute if score $solve2x2_x_t10 __test matches 1 run return run function test:solve2x2_x__then_0
18
17
  function test:solve2x2_x__merge_1
@@ -12,7 +12,6 @@ scoreboard players operation $solve2x2_y_t8 __test = $solve2x2_y_t6 __test
12
12
  scoreboard players operation $solve2x2_y_t8 __test -= $solve2x2_y_t7 __test
13
13
  scoreboard players operation $solve2x2_y_t9 __test = $solve2x2_y_t8 __test
14
14
  scoreboard players set $__const_0 __test 0
15
- scoreboard players set $solve2x2_y_t10 __test 0
16
- execute if score $solve2x2_y_t8 __test = $__const_0 __test run scoreboard players set $solve2x2_y_t10 __test 1
15
+ execute store success score $solve2x2_y_t10 __test if score $solve2x2_y_t8 __test = $__const_0 __test
17
16
  execute if score $solve2x2_y_t10 __test matches 1 run return run function test:solve2x2_y__then_0
18
17
  function test:solve2x2_y__merge_1
@@ -0,0 +1,5 @@
1
+ scoreboard players operation $spiral_ring_t0 __test = $p0 __test
2
+ scoreboard players set $__const_1 __test 1
3
+ execute store success score $spiral_ring_t1 __test if score $spiral_ring_t0 __test <= $__const_1 __test
4
+ execute if score $spiral_ring_t1 __test matches 1 run return run function test:spiral_ring__then_0
5
+ function test:spiral_ring__merge_1
@@ -0,0 +1,13 @@
1
+ scoreboard players operation $spiral_ring_t2 __test = $spiral_ring_t0 __test
2
+ scoreboard players set $__const_1 __test 1
3
+ scoreboard players operation $spiral_ring_t2 __test -= $__const_1 __test
4
+ scoreboard players operation $p0 __test = $spiral_ring_t2 __test
5
+ function test:isqrt
6
+ scoreboard players operation $spiral_ring_t3 __test = $ret __test
7
+ scoreboard players operation $spiral_ring_t4 __test = $spiral_ring_t3 __test
8
+ scoreboard players set $__const_1 __test 1
9
+ scoreboard players operation $spiral_ring_t4 __test += $__const_1 __test
10
+ scoreboard players operation $spiral_ring_t5 __test = $spiral_ring_t4 __test
11
+ scoreboard players set $__const_2 __test 2
12
+ scoreboard players operation $spiral_ring_t5 __test /= $__const_2 __test
13
+ scoreboard players operation $ret __test = $spiral_ring_t5 __test
@@ -0,0 +1,2 @@
1
+ scoreboard players set $__const_0 __test 0
2
+ scoreboard players operation $ret __test = $__const_0 __test
@@ -0,0 +1,11 @@
1
+ scoreboard players operation $spring_force_t0 __test = $p0 __test
2
+ scoreboard players operation $spring_force_t1 __test = $p1 __test
3
+ scoreboard players operation $spring_force_t2 __test = $p2 __test
4
+ scoreboard players operation $spring_force_t3 __test = $spring_force_t1 __test
5
+ scoreboard players operation $spring_force_t3 __test -= $spring_force_t0 __test
6
+ scoreboard players operation $spring_force_t4 __test = $spring_force_t3 __test
7
+ scoreboard players operation $spring_force_t4 __test *= $spring_force_t2 __test
8
+ scoreboard players operation $spring_force_t5 __test = $spring_force_t4 __test
9
+ scoreboard players set $__const_10000 __test 10000
10
+ scoreboard players operation $spring_force_t5 __test /= $__const_10000 __test
11
+ scoreboard players operation $ret __test = $spring_force_t5 __test
@@ -0,0 +1,18 @@
1
+ scoreboard players operation $spring_update_v_t0 __test = $p0 __test
2
+ scoreboard players operation $spring_update_v_t1 __test = $p1 __test
3
+ scoreboard players operation $spring_update_v_t2 __test = $p2 __test
4
+ scoreboard players operation $spring_update_v_t3 __test = $p3 __test
5
+ scoreboard players operation $spring_update_v_t4 __test = $p4 __test
6
+ scoreboard players operation $p0 __test = $spring_update_v_t1 __test
7
+ scoreboard players operation $p1 __test = $spring_update_v_t2 __test
8
+ scoreboard players operation $p2 __test = $spring_update_v_t3 __test
9
+ function test:spring_force
10
+ scoreboard players operation $spring_update_v_t5 __test = $ret __test
11
+ scoreboard players operation $spring_update_v_t7 __test = $spring_update_v_t0 __test
12
+ scoreboard players operation $spring_update_v_t7 __test *= $spring_update_v_t4 __test
13
+ scoreboard players operation $spring_update_v_t8 __test = $spring_update_v_t7 __test
14
+ scoreboard players set $__const_10000 __test 10000
15
+ scoreboard players operation $spring_update_v_t8 __test /= $__const_10000 __test
16
+ scoreboard players operation $spring_update_v_t10 __test = $spring_update_v_t8 __test
17
+ scoreboard players operation $spring_update_v_t10 __test += $spring_update_v_t5 __test
18
+ scoreboard players operation $ret __test = $spring_update_v_t10 __test
@@ -0,0 +1,8 @@
1
+ scoreboard players set $p0 __test 0
2
+ function test:reset
3
+ function test:_section__const_0
4
+ say §aStarting capability demo — phases cycle every 10 seconds.
5
+ say §7Math → BigInt → Advanced → Visual FX → (repeat)
6
+ say §7Use §f/function showcase:dump_math §7or §f/function showcase:dump_bigint
7
+ say §7for the full printed output at any time.
8
+ function test:_next_phase
@@ -0,0 +1,2 @@
1
+ execute as @a[limit=1] run function test:stop__foreach_t0
2
+ say §c[Showcase] §rStopped.
@@ -0,0 +1 @@
1
+ title p actionbar {"text":"§c[Showcase stopped]"}
@@ -0,0 +1,24 @@
1
+ scoreboard players operation $terrain_height_t0 __test = $p0 __test
2
+ scoreboard players operation $terrain_height_t1 __test = $p1 __test
3
+ scoreboard players operation $terrain_height_t2 __test = $p2 __test
4
+ scoreboard players operation $terrain_height_t3 __test = $p3 __test
5
+ scoreboard players operation $terrain_height_t4 __test = $terrain_height_t0 __test
6
+ scoreboard players set $__const_2500 __test 2500
7
+ scoreboard players operation $terrain_height_t4 __test *= $__const_2500 __test
8
+ scoreboard players operation $terrain_height_t5 __test = $terrain_height_t1 __test
9
+ scoreboard players set $__const_2500 __test 2500
10
+ scoreboard players operation $terrain_height_t5 __test *= $__const_2500 __test
11
+ scoreboard players operation $p0 __test = $terrain_height_t4 __test
12
+ scoreboard players operation $p1 __test = $terrain_height_t5 __test
13
+ scoreboard players set $p2 __test 3
14
+ scoreboard players set $p3 __test 5000
15
+ function test:fbm_2d
16
+ scoreboard players operation $terrain_height_t6 __test = $ret __test
17
+ scoreboard players operation $terrain_height_t8 __test = $terrain_height_t6 __test
18
+ scoreboard players operation $terrain_height_t8 __test *= $terrain_height_t3 __test
19
+ scoreboard players operation $terrain_height_t9 __test = $terrain_height_t8 __test
20
+ scoreboard players set $__const_10000 __test 10000
21
+ scoreboard players operation $terrain_height_t9 __test /= $__const_10000 __test
22
+ scoreboard players operation $terrain_height_t10 __test = $terrain_height_t2 __test
23
+ scoreboard players operation $terrain_height_t10 __test += $terrain_height_t9 __test
24
+ scoreboard players operation $ret __test = $terrain_height_t10 __test
@@ -0,0 +1,8 @@
1
+ scoreboard players operation $uniform_scale_t0 __test = $p0 __test
2
+ scoreboard players operation $uniform_scale_t1 __test = $p1 __test
3
+ scoreboard players operation $uniform_scale_t2 __test = $uniform_scale_t0 __test
4
+ scoreboard players operation $uniform_scale_t2 __test *= $uniform_scale_t1 __test
5
+ scoreboard players operation $uniform_scale_t3 __test = $uniform_scale_t2 __test
6
+ scoreboard players set $__const_10000 __test 10000
7
+ scoreboard players operation $uniform_scale_t3 __test /= $__const_10000 __test
8
+ scoreboard players operation $ret __test = $uniform_scale_t3 __test
@@ -0,0 +1,5 @@
1
+ scoreboard players operation $update_pos_t0 __test = $p0 __test
2
+ scoreboard players operation $update_pos_t1 __test = $p1 __test
3
+ scoreboard players operation $update_pos_t2 __test = $update_pos_t0 __test
4
+ scoreboard players operation $update_pos_t2 __test += $update_pos_t1 __test
5
+ scoreboard players operation $ret __test = $update_pos_t2 __test
@@ -0,0 +1,14 @@
1
+ scoreboard players operation $value_noise_1d_t0 __test = $p0 __test
2
+ scoreboard players operation $value_noise_1d_t1 __test = $value_noise_1d_t0 __test
3
+ scoreboard players set $__const_10000 __test 10000
4
+ scoreboard players operation $value_noise_1d_t1 __test /= $__const_10000 __test
5
+ scoreboard players operation $value_noise_1d_t2 __test = $value_noise_1d_t1 __test
6
+ scoreboard players operation $value_noise_1d_t3 __test = $value_noise_1d_t0 __test
7
+ scoreboard players set $__const_10000 __test 10000
8
+ scoreboard players operation $value_noise_1d_t3 __test %= $__const_10000 __test
9
+ scoreboard players operation $value_noise_1d_t4 __test = $value_noise_1d_t3 __test
10
+ scoreboard players set $__const_0 __test 0
11
+ scoreboard players set $value_noise_1d_t5 __test 0
12
+ execute if score $value_noise_1d_t3 __test < $__const_0 __test run scoreboard players set $value_noise_1d_t5 __test 1
13
+ execute if score $value_noise_1d_t5 __test matches 1 run return run function test:value_noise_1d__then_0
14
+ function test:value_noise_1d__merge_1
@@ -0,0 +1,39 @@
1
+ scoreboard players operation $p0 __test = $value_noise_1d_t2 __test
2
+ function test:hash_1d_pos
3
+ scoreboard players operation $value_noise_1d_t8 __test = $ret __test
4
+ scoreboard players operation $value_noise_1d_t10 __test = $value_noise_1d_t2 __test
5
+ scoreboard players add $value_noise_1d_t10 __test 1
6
+ scoreboard players operation $p0 __test = $value_noise_1d_t10 __test
7
+ function test:hash_1d_pos
8
+ scoreboard players operation $value_noise_1d_t11 __test = $ret __test
9
+ scoreboard players set $value_noise_1d_t13 __test 3
10
+ scoreboard players operation $value_noise_1d_t13 __test *= $value_noise_1d_t4 __test
11
+ scoreboard players operation $value_noise_1d_t14 __test = $value_noise_1d_t13 __test
12
+ scoreboard players operation $value_noise_1d_t14 __test *= $value_noise_1d_t4 __test
13
+ scoreboard players operation $value_noise_1d_t15 __test = $value_noise_1d_t14 __test
14
+ scoreboard players set $__const_10000 __test 10000
15
+ scoreboard players operation $value_noise_1d_t15 __test /= $__const_10000 __test
16
+ scoreboard players set $value_noise_1d_t16 __test 2
17
+ scoreboard players operation $value_noise_1d_t16 __test *= $value_noise_1d_t4 __test
18
+ scoreboard players operation $value_noise_1d_t17 __test = $value_noise_1d_t16 __test
19
+ scoreboard players operation $value_noise_1d_t17 __test *= $value_noise_1d_t4 __test
20
+ scoreboard players operation $value_noise_1d_t18 __test = $value_noise_1d_t17 __test
21
+ scoreboard players set $__const_10000 __test 10000
22
+ scoreboard players operation $value_noise_1d_t18 __test /= $__const_10000 __test
23
+ scoreboard players operation $value_noise_1d_t19 __test = $value_noise_1d_t18 __test
24
+ scoreboard players operation $value_noise_1d_t19 __test *= $value_noise_1d_t4 __test
25
+ scoreboard players operation $value_noise_1d_t20 __test = $value_noise_1d_t19 __test
26
+ scoreboard players set $__const_10000 __test 10000
27
+ scoreboard players operation $value_noise_1d_t20 __test /= $__const_10000 __test
28
+ scoreboard players operation $value_noise_1d_t21 __test = $value_noise_1d_t15 __test
29
+ scoreboard players operation $value_noise_1d_t21 __test -= $value_noise_1d_t20 __test
30
+ scoreboard players operation $value_noise_1d_t23 __test = $value_noise_1d_t11 __test
31
+ scoreboard players operation $value_noise_1d_t23 __test -= $value_noise_1d_t8 __test
32
+ scoreboard players operation $value_noise_1d_t24 __test = $value_noise_1d_t23 __test
33
+ scoreboard players operation $value_noise_1d_t24 __test *= $value_noise_1d_t21 __test
34
+ scoreboard players operation $value_noise_1d_t25 __test = $value_noise_1d_t24 __test
35
+ scoreboard players set $__const_10000 __test 10000
36
+ scoreboard players operation $value_noise_1d_t25 __test /= $__const_10000 __test
37
+ scoreboard players operation $value_noise_1d_t26 __test = $value_noise_1d_t8 __test
38
+ scoreboard players operation $value_noise_1d_t26 __test += $value_noise_1d_t25 __test
39
+ scoreboard players operation $ret __test = $value_noise_1d_t26 __test
@@ -0,0 +1,7 @@
1
+ scoreboard players operation $value_noise_1d_t6 __test = $value_noise_1d_t4 __test
2
+ scoreboard players add $value_noise_1d_t6 __test 10000
3
+ scoreboard players operation $value_noise_1d_t4 __test = $value_noise_1d_t6 __test
4
+ scoreboard players operation $value_noise_1d_t7 __test = $value_noise_1d_t2 __test
5
+ scoreboard players remove $value_noise_1d_t7 __test 1
6
+ scoreboard players operation $value_noise_1d_t2 __test = $value_noise_1d_t7 __test
7
+ function test:value_noise_1d__merge_1
@@ -0,0 +1,15 @@
1
+ scoreboard players operation $value_noise_2d_t0 __test = $p0 __test
2
+ scoreboard players operation $value_noise_2d_t1 __test = $p1 __test
3
+ scoreboard players operation $value_noise_2d_t2 __test = $value_noise_2d_t0 __test
4
+ scoreboard players set $__const_10000 __test 10000
5
+ scoreboard players operation $value_noise_2d_t2 __test /= $__const_10000 __test
6
+ scoreboard players operation $value_noise_2d_t3 __test = $value_noise_2d_t2 __test
7
+ scoreboard players operation $value_noise_2d_t4 __test = $value_noise_2d_t0 __test
8
+ scoreboard players set $__const_10000 __test 10000
9
+ scoreboard players operation $value_noise_2d_t4 __test %= $__const_10000 __test
10
+ scoreboard players operation $value_noise_2d_t5 __test = $value_noise_2d_t4 __test
11
+ scoreboard players set $__const_0 __test 0
12
+ scoreboard players set $value_noise_2d_t6 __test 0
13
+ execute if score $value_noise_2d_t4 __test < $__const_0 __test run scoreboard players set $value_noise_2d_t6 __test 1
14
+ execute if score $value_noise_2d_t6 __test matches 1 run return run function test:value_noise_2d__then_0
15
+ function test:value_noise_2d__merge_1
@@ -0,0 +1,13 @@
1
+ scoreboard players operation $value_noise_2d_t9 __test = $value_noise_2d_t1 __test
2
+ scoreboard players set $__const_10000 __test 10000
3
+ scoreboard players operation $value_noise_2d_t9 __test /= $__const_10000 __test
4
+ scoreboard players operation $value_noise_2d_t10 __test = $value_noise_2d_t9 __test
5
+ scoreboard players operation $value_noise_2d_t11 __test = $value_noise_2d_t1 __test
6
+ scoreboard players set $__const_10000 __test 10000
7
+ scoreboard players operation $value_noise_2d_t11 __test %= $__const_10000 __test
8
+ scoreboard players operation $value_noise_2d_t12 __test = $value_noise_2d_t11 __test
9
+ scoreboard players set $__const_0 __test 0
10
+ scoreboard players set $value_noise_2d_t13 __test 0
11
+ execute if score $value_noise_2d_t11 __test < $__const_0 __test run scoreboard players set $value_noise_2d_t13 __test 1
12
+ execute if score $value_noise_2d_t13 __test matches 1 run return run function test:value_noise_2d__then_2
13
+ function test:value_noise_2d__merge_3
@@ -0,0 +1,98 @@
1
+ scoreboard players operation $p0 __test = $value_noise_2d_t3 __test
2
+ scoreboard players operation $p1 __test = $value_noise_2d_t10 __test
3
+ function test:hash_2d_pos
4
+ scoreboard players operation $value_noise_2d_t16 __test = $ret __test
5
+ scoreboard players operation $value_noise_2d_t18 __test = $value_noise_2d_t3 __test
6
+ scoreboard players set $__const_1 __test 1
7
+ scoreboard players operation $value_noise_2d_t18 __test += $__const_1 __test
8
+ scoreboard players operation $p0 __test = $value_noise_2d_t18 __test
9
+ scoreboard players operation $p1 __test = $value_noise_2d_t10 __test
10
+ function test:hash_2d_pos
11
+ scoreboard players operation $value_noise_2d_t19 __test = $ret __test
12
+ scoreboard players operation $value_noise_2d_t21 __test = $value_noise_2d_t10 __test
13
+ scoreboard players set $__const_1 __test 1
14
+ scoreboard players operation $value_noise_2d_t21 __test += $__const_1 __test
15
+ scoreboard players operation $p0 __test = $value_noise_2d_t3 __test
16
+ scoreboard players operation $p1 __test = $value_noise_2d_t21 __test
17
+ function test:hash_2d_pos
18
+ scoreboard players operation $value_noise_2d_t22 __test = $ret __test
19
+ scoreboard players operation $value_noise_2d_t24 __test = $value_noise_2d_t3 __test
20
+ scoreboard players set $__const_1 __test 1
21
+ scoreboard players operation $value_noise_2d_t24 __test += $__const_1 __test
22
+ scoreboard players operation $value_noise_2d_t25 __test = $value_noise_2d_t10 __test
23
+ scoreboard players set $__const_1 __test 1
24
+ scoreboard players operation $value_noise_2d_t25 __test += $__const_1 __test
25
+ scoreboard players operation $p0 __test = $value_noise_2d_t24 __test
26
+ scoreboard players operation $p1 __test = $value_noise_2d_t25 __test
27
+ function test:hash_2d_pos
28
+ scoreboard players operation $value_noise_2d_t26 __test = $ret __test
29
+ scoreboard players set $value_noise_2d_t28 __test 3
30
+ scoreboard players operation $value_noise_2d_t28 __test *= $value_noise_2d_t5 __test
31
+ scoreboard players operation $value_noise_2d_t29 __test = $value_noise_2d_t28 __test
32
+ scoreboard players operation $value_noise_2d_t29 __test *= $value_noise_2d_t5 __test
33
+ scoreboard players operation $value_noise_2d_t30 __test = $value_noise_2d_t29 __test
34
+ scoreboard players set $__const_10000 __test 10000
35
+ scoreboard players operation $value_noise_2d_t30 __test /= $__const_10000 __test
36
+ scoreboard players set $value_noise_2d_t31 __test 2
37
+ scoreboard players operation $value_noise_2d_t31 __test *= $value_noise_2d_t5 __test
38
+ scoreboard players operation $value_noise_2d_t32 __test = $value_noise_2d_t31 __test
39
+ scoreboard players operation $value_noise_2d_t32 __test *= $value_noise_2d_t5 __test
40
+ scoreboard players operation $value_noise_2d_t33 __test = $value_noise_2d_t32 __test
41
+ scoreboard players set $__const_10000 __test 10000
42
+ scoreboard players operation $value_noise_2d_t33 __test /= $__const_10000 __test
43
+ scoreboard players operation $value_noise_2d_t34 __test = $value_noise_2d_t33 __test
44
+ scoreboard players operation $value_noise_2d_t34 __test *= $value_noise_2d_t5 __test
45
+ scoreboard players operation $value_noise_2d_t35 __test = $value_noise_2d_t34 __test
46
+ scoreboard players set $__const_10000 __test 10000
47
+ scoreboard players operation $value_noise_2d_t35 __test /= $__const_10000 __test
48
+ scoreboard players operation $value_noise_2d_t36 __test = $value_noise_2d_t30 __test
49
+ scoreboard players operation $value_noise_2d_t36 __test -= $value_noise_2d_t35 __test
50
+ scoreboard players set $value_noise_2d_t38 __test 3
51
+ scoreboard players operation $value_noise_2d_t38 __test *= $value_noise_2d_t12 __test
52
+ scoreboard players operation $value_noise_2d_t39 __test = $value_noise_2d_t38 __test
53
+ scoreboard players operation $value_noise_2d_t39 __test *= $value_noise_2d_t12 __test
54
+ scoreboard players operation $value_noise_2d_t40 __test = $value_noise_2d_t39 __test
55
+ scoreboard players set $__const_10000 __test 10000
56
+ scoreboard players operation $value_noise_2d_t40 __test /= $__const_10000 __test
57
+ scoreboard players set $value_noise_2d_t41 __test 2
58
+ scoreboard players operation $value_noise_2d_t41 __test *= $value_noise_2d_t12 __test
59
+ scoreboard players operation $value_noise_2d_t42 __test = $value_noise_2d_t41 __test
60
+ scoreboard players operation $value_noise_2d_t42 __test *= $value_noise_2d_t12 __test
61
+ scoreboard players operation $value_noise_2d_t43 __test = $value_noise_2d_t42 __test
62
+ scoreboard players set $__const_10000 __test 10000
63
+ scoreboard players operation $value_noise_2d_t43 __test /= $__const_10000 __test
64
+ scoreboard players operation $value_noise_2d_t44 __test = $value_noise_2d_t43 __test
65
+ scoreboard players operation $value_noise_2d_t44 __test *= $value_noise_2d_t12 __test
66
+ scoreboard players operation $value_noise_2d_t45 __test = $value_noise_2d_t44 __test
67
+ scoreboard players set $__const_10000 __test 10000
68
+ scoreboard players operation $value_noise_2d_t45 __test /= $__const_10000 __test
69
+ scoreboard players operation $value_noise_2d_t46 __test = $value_noise_2d_t40 __test
70
+ scoreboard players operation $value_noise_2d_t46 __test -= $value_noise_2d_t45 __test
71
+ scoreboard players operation $value_noise_2d_t48 __test = $value_noise_2d_t19 __test
72
+ scoreboard players operation $value_noise_2d_t48 __test -= $value_noise_2d_t16 __test
73
+ scoreboard players operation $value_noise_2d_t49 __test = $value_noise_2d_t48 __test
74
+ scoreboard players operation $value_noise_2d_t49 __test *= $value_noise_2d_t36 __test
75
+ scoreboard players operation $value_noise_2d_t50 __test = $value_noise_2d_t49 __test
76
+ scoreboard players set $__const_10000 __test 10000
77
+ scoreboard players operation $value_noise_2d_t50 __test /= $__const_10000 __test
78
+ scoreboard players operation $value_noise_2d_t51 __test = $value_noise_2d_t16 __test
79
+ scoreboard players operation $value_noise_2d_t51 __test += $value_noise_2d_t50 __test
80
+ scoreboard players operation $value_noise_2d_t53 __test = $value_noise_2d_t26 __test
81
+ scoreboard players operation $value_noise_2d_t53 __test -= $value_noise_2d_t22 __test
82
+ scoreboard players operation $value_noise_2d_t54 __test = $value_noise_2d_t53 __test
83
+ scoreboard players operation $value_noise_2d_t54 __test *= $value_noise_2d_t36 __test
84
+ scoreboard players operation $value_noise_2d_t55 __test = $value_noise_2d_t54 __test
85
+ scoreboard players set $__const_10000 __test 10000
86
+ scoreboard players operation $value_noise_2d_t55 __test /= $__const_10000 __test
87
+ scoreboard players operation $value_noise_2d_t56 __test = $value_noise_2d_t22 __test
88
+ scoreboard players operation $value_noise_2d_t56 __test += $value_noise_2d_t55 __test
89
+ scoreboard players operation $value_noise_2d_t58 __test = $value_noise_2d_t56 __test
90
+ scoreboard players operation $value_noise_2d_t58 __test -= $value_noise_2d_t51 __test
91
+ scoreboard players operation $value_noise_2d_t59 __test = $value_noise_2d_t58 __test
92
+ scoreboard players operation $value_noise_2d_t59 __test *= $value_noise_2d_t46 __test
93
+ scoreboard players operation $value_noise_2d_t60 __test = $value_noise_2d_t59 __test
94
+ scoreboard players set $__const_10000 __test 10000
95
+ scoreboard players operation $value_noise_2d_t60 __test /= $__const_10000 __test
96
+ scoreboard players operation $value_noise_2d_t61 __test = $value_noise_2d_t51 __test
97
+ scoreboard players operation $value_noise_2d_t61 __test += $value_noise_2d_t60 __test
98
+ scoreboard players operation $ret __test = $value_noise_2d_t61 __test
@@ -0,0 +1,7 @@
1
+ scoreboard players operation $value_noise_2d_t7 __test = $value_noise_2d_t5 __test
2
+ scoreboard players add $value_noise_2d_t7 __test 10000
3
+ scoreboard players operation $value_noise_2d_t5 __test = $value_noise_2d_t7 __test
4
+ scoreboard players operation $value_noise_2d_t8 __test = $value_noise_2d_t3 __test
5
+ scoreboard players remove $value_noise_2d_t8 __test 1
6
+ scoreboard players operation $value_noise_2d_t3 __test = $value_noise_2d_t8 __test
7
+ function test:value_noise_2d__merge_1
@@ -0,0 +1,7 @@
1
+ scoreboard players operation $value_noise_2d_t14 __test = $value_noise_2d_t12 __test
2
+ scoreboard players add $value_noise_2d_t14 __test 10000
3
+ scoreboard players operation $value_noise_2d_t12 __test = $value_noise_2d_t14 __test
4
+ scoreboard players operation $value_noise_2d_t15 __test = $value_noise_2d_t10 __test
5
+ scoreboard players remove $value_noise_2d_t15 __test 1
6
+ scoreboard players operation $value_noise_2d_t10 __test = $value_noise_2d_t15 __test
7
+ function test:value_noise_2d__merge_3
@@ -0,0 +1,2 @@
1
+ scoreboard players set $__const_8000 __test 8000
2
+ scoreboard players operation $ret __test = $__const_8000 __test
package/dist/pack.mcmeta CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "pack": {
3
3
  "pack_format": 26,
4
- "description": "RedScript datapack: test"
4
+ "description": "RedScript datapack: mathdemo"
5
5
  }
6
6
  }
@@ -123,4 +123,96 @@ describe('execute store peephole', () => {
123
123
  expect(result).toBe(fn);
124
124
  });
125
125
  });
126
+ describe('execute store success peephole (cmp pattern)', () => {
127
+ test('merges score_set(0) + raw execute-set-1 into execute store success', () => {
128
+ const fn = mkFn([
129
+ { kind: 'score_set', dst: mkSlot('$flag'), value: 0 },
130
+ { kind: 'raw', cmd: `execute if score $a ${obj} > $b ${obj} run scoreboard players set $flag ${obj} 1` },
131
+ ]);
132
+ const result = (0, peephole_1.execStorePeephole)(fn);
133
+ expect(result.instructions).toHaveLength(1);
134
+ expect(result.instructions[0]).toEqual({
135
+ kind: 'raw',
136
+ cmd: `execute store success score $flag ${obj} if score $a ${obj} > $b ${obj}`,
137
+ });
138
+ });
139
+ test('merges with "unless" condition', () => {
140
+ const fn = mkFn([
141
+ { kind: 'score_set', dst: mkSlot('$ne_flag'), value: 0 },
142
+ { kind: 'raw', cmd: `execute unless score $x ${obj} = $y ${obj} run scoreboard players set $ne_flag ${obj} 1` },
143
+ ]);
144
+ const result = (0, peephole_1.execStorePeephole)(fn);
145
+ expect(result.instructions).toHaveLength(1);
146
+ expect(result.instructions[0]).toEqual({
147
+ kind: 'raw',
148
+ cmd: `execute store success score $ne_flag ${obj} unless score $x ${obj} = $y ${obj}`,
149
+ });
150
+ });
151
+ test('does not merge when players do not match', () => {
152
+ const fn = mkFn([
153
+ { kind: 'score_set', dst: mkSlot('$a'), value: 0 },
154
+ { kind: 'raw', cmd: `execute if score $x ${obj} > $y ${obj} run scoreboard players set $b ${obj} 1` },
155
+ ]);
156
+ const result = (0, peephole_1.execStorePeephole)(fn);
157
+ expect(result.instructions).toHaveLength(2);
158
+ expect(result).toBe(fn);
159
+ });
160
+ test('does not merge when objectives do not match', () => {
161
+ const fn = mkFn([
162
+ { kind: 'score_set', dst: mkSlot('$flag'), value: 0 },
163
+ { kind: 'raw', cmd: `execute if score $a other_obj > $b other_obj run scoreboard players set $flag other_obj 1` },
164
+ ]);
165
+ const result = (0, peephole_1.execStorePeephole)(fn);
166
+ // objectives differ between score_set (obj=__test) and raw (other_obj)
167
+ expect(result.instructions).toHaveLength(2);
168
+ expect(result).toBe(fn);
169
+ });
170
+ test('does not merge score_set(1) + raw execute-set-1 (value must be 0)', () => {
171
+ const fn = mkFn([
172
+ { kind: 'score_set', dst: mkSlot('$flag'), value: 1 },
173
+ { kind: 'raw', cmd: `execute if score $a ${obj} > $b ${obj} run scoreboard players set $flag ${obj} 1` },
174
+ ]);
175
+ const result = (0, peephole_1.execStorePeephole)(fn);
176
+ expect(result.instructions).toHaveLength(2);
177
+ expect(result).toBe(fn);
178
+ });
179
+ test('does not merge when there is an instruction between them', () => {
180
+ const fn = mkFn([
181
+ { kind: 'score_set', dst: mkSlot('$flag'), value: 0 },
182
+ { kind: 'call', fn: 'ns:other' },
183
+ { kind: 'raw', cmd: `execute if score $a ${obj} > $b ${obj} run scoreboard players set $flag ${obj} 1` },
184
+ ]);
185
+ const result = (0, peephole_1.execStorePeephole)(fn);
186
+ expect(result.instructions).toHaveLength(3);
187
+ });
188
+ test('merges multiple adjacent cmp patterns', () => {
189
+ const fn = mkFn([
190
+ { kind: 'score_set', dst: mkSlot('$r1'), value: 0 },
191
+ { kind: 'raw', cmd: `execute if score $a ${obj} > $b ${obj} run scoreboard players set $r1 ${obj} 1` },
192
+ { kind: 'score_set', dst: mkSlot('$r2'), value: 0 },
193
+ { kind: 'raw', cmd: `execute if score $c ${obj} < $d ${obj} run scoreboard players set $r2 ${obj} 1` },
194
+ ]);
195
+ const result = (0, peephole_1.execStorePeephole)(fn);
196
+ expect(result.instructions).toHaveLength(2);
197
+ expect(result.instructions[0]).toEqual({
198
+ kind: 'raw',
199
+ cmd: `execute store success score $r1 ${obj} if score $a ${obj} > $b ${obj}`,
200
+ });
201
+ expect(result.instructions[1]).toEqual({
202
+ kind: 'raw',
203
+ cmd: `execute store success score $r2 ${obj} if score $c ${obj} < $d ${obj}`,
204
+ });
205
+ });
206
+ test('5 cmp patterns: saves exactly 5 commands', () => {
207
+ const instrs = [];
208
+ for (let k = 1; k <= 5; k++) {
209
+ instrs.push({ kind: 'score_set', dst: mkSlot(`$r${k}`), value: 0 });
210
+ instrs.push({ kind: 'raw', cmd: `execute if score $a ${obj} > $b ${obj} run scoreboard players set $r${k} ${obj} 1` });
211
+ }
212
+ const fn = mkFn(instrs);
213
+ expect(fn.instructions).toHaveLength(10);
214
+ const result = (0, peephole_1.execStorePeephole)(fn);
215
+ expect(result.instructions).toHaveLength(5);
216
+ });
217
+ });
126
218
  //# sourceMappingURL=peephole.test.js.map
@@ -427,6 +427,13 @@ export type Stmt = {
427
427
  end: Expr;
428
428
  body: Block;
429
429
  span?: Span;
430
+ } | {
431
+ kind: 'for_in_array';
432
+ binding: string;
433
+ arrayName: string;
434
+ lenExpr: Expr;
435
+ body: Block;
436
+ span?: Span;
430
437
  } | {
431
438
  kind: 'match';
432
439
  expr: Expr;