minecraft-datapack-language 15.4.29__tar.gz → 15.4.30__tar.gz

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 (342) hide show
  1. {minecraft_datapack_language-15.4.29/minecraft_datapack_language.egg-info → minecraft_datapack_language-15.4.30}/PKG-INFO +1 -1
  2. minecraft_datapack_language-15.4.30/docs/_data/version.yml +3 -0
  3. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_docs/cli-reference.md +19 -42
  4. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_docs/examples.md +45 -45
  5. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_docs/getting-started.md +17 -17
  6. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_docs/multi-file-projects.md +7 -7
  7. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_docs/python-api.md +3 -3
  8. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_docs/vscode-extension.md +1 -1
  9. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/index.md +11 -12
  10. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language/__init__.py +6 -0
  11. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language/_version.py +3 -3
  12. minecraft_datapack_language-15.4.30/minecraft_datapack_language/cli.py +296 -0
  13. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30/minecraft_datapack_language.egg-info}/PKG-INFO +1 -1
  14. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language.egg-info/SOURCES.txt +2 -0
  15. minecraft_datapack_language-15.4.29/docs/_data/version.yml +0 -3
  16. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/.cursor/rules/aispec.mdc +0 -0
  17. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/.github/actions/mdl-compile/action.yml +0 -0
  18. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/.github/workflows/ci.yml +0 -0
  19. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/.github/workflows/docs.yml +0 -0
  20. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/.github/workflows/pypi.yml +0 -0
  21. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/.github/workflows/release.yml +0 -0
  22. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/.github/workflows/test-examples.yml +0 -0
  23. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/.github/workflows/update-website-version.yml +0 -0
  24. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/.gitignore +0 -0
  25. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/CONDITIONALS_IMPLEMENTATION.md +0 -0
  26. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/LICENSE +0 -0
  27. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/Makefile +0 -0
  28. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/README.md +0 -0
  29. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/advancements/diamond_sword.json +0 -0
  30. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/advancements/first_spell.json +0 -0
  31. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/advancements/other_advancement.json +0 -0
  32. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/advancements/test_advancement.json +0 -0
  33. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/complex_scopes/function/main_else_8.mcfunction +0 -0
  34. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/complex_scopes/function/main_if_8.mcfunction +0 -0
  35. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_basic_if_if_2.mcfunction +0 -0
  36. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_basic_if_if_3.mcfunction +0 -0
  37. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_basic_if_if_4.mcfunction +0 -0
  38. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_complex_if_if_2.mcfunction +0 -0
  39. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_complex_if_if_3.mcfunction +0 -0
  40. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_complex_if_if_4.mcfunction +0 -0
  41. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_complex_if_if_5.mcfunction +0 -0
  42. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_control_complex_expressions_if_2.mcfunction +0 -0
  43. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_control_complex_expressions_if_4.mcfunction +0 -0
  44. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_control_variable_substitution_if_2.mcfunction +0 -0
  45. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_control_with_raw_if_2.mcfunction +0 -0
  46. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_control_with_scopes_if_5.mcfunction +0 -0
  47. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_control_with_tellraw_else_2.mcfunction +0 -0
  48. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_control_with_tellraw_if_2.mcfunction +0 -0
  49. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_control_with_tellraw_if_4.mcfunction +0 -0
  50. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_if_else_else_2.mcfunction +0 -0
  51. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_if_else_else_3.mcfunction +0 -0
  52. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_if_else_else_4.mcfunction +0 -0
  53. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_if_else_if_2.mcfunction +0 -0
  54. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_if_else_if_3.mcfunction +0 -0
  55. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_if_else_if_4.mcfunction +0 -0
  56. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_else_2.mcfunction +0 -0
  57. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_else_3.mcfunction +0 -0
  58. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_else_3_else_0.mcfunction +0 -0
  59. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_else_3_if_0.mcfunction +0 -0
  60. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_if_2.mcfunction +0 -0
  61. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_if_2_else_0.mcfunction +0 -0
  62. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_if_2_if_0.mcfunction +0 -0
  63. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_if_2_if_0_else_0.mcfunction +0 -0
  64. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_if_2_if_0_if_0.mcfunction +0 -0
  65. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_if_3.mcfunction +0 -0
  66. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_if_3_else_0.mcfunction +0 -0
  67. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/comprehensive_control_test/function/test_nested_if_if_3_if_0.mcfunction +0 -0
  68. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/control_test/function/main_if_0.mcfunction +0 -0
  69. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/control_test/function/main_while_1.mcfunction +0 -0
  70. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/control_test/function/main_while_body_1.mcfunction +0 -0
  71. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/if_test/function/main_else_1.mcfunction +0 -0
  72. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/if_test/function/main_if_1.mcfunction +0 -0
  73. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/conditional_demo_else_3.mcfunction +0 -0
  74. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/conditional_demo_if_3.mcfunction +0 -0
  75. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/conditional_demo_if_3_else_0.mcfunction +0 -0
  76. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/conditional_demo_if_3_if_0.mcfunction +0 -0
  77. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/conditional_demo_if_3_if_0_else_0.mcfunction +0 -0
  78. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/conditional_demo_if_3_if_0_if_0.mcfunction +0 -0
  79. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/countdown_while_1.mcfunction +0 -0
  80. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/countdown_while_body_1.mcfunction +0 -0
  81. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/increase_tick_per_player_if_1.mcfunction +0 -0
  82. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/increase_tick_per_player_if_1_if_0.mcfunction +0 -0
  83. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/loop_demo_while_2.mcfunction +0 -0
  84. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/loop_demo_while_body_2.mcfunction +0 -0
  85. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/loop_demo_while_body_2_else_0.mcfunction +0 -0
  86. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/loop_demo_while_body_2_if_0.mcfunction +0 -0
  87. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/loop_demo_while_body_2_if_2.mcfunction +0 -0
  88. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_else_0.mcfunction +0 -0
  89. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_else_1.mcfunction +0 -0
  90. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_else_5.mcfunction +0 -0
  91. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_if_0.mcfunction +0 -0
  92. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_if_1.mcfunction +0 -0
  93. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_if_5.mcfunction +0 -0
  94. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_while_0.mcfunction +0 -0
  95. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_while_1.mcfunction +0 -0
  96. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_while_2.mcfunction +0 -0
  97. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_while_6.mcfunction +0 -0
  98. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_while_7.mcfunction +0 -0
  99. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_while_body_0.mcfunction +0 -0
  100. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_while_body_1.mcfunction +0 -0
  101. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_while_body_2.mcfunction +0 -0
  102. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_while_body_6.mcfunction +0 -0
  103. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/main_while_body_7.mcfunction +0 -0
  104. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/scoreboard_demo_while_3.mcfunction +0 -0
  105. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/scoreboard_demo_while_body_3.mcfunction +0 -0
  106. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/scoreboard_demo_while_body_3_if_1.mcfunction +0 -0
  107. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/start_game_if_1.mcfunction +0 -0
  108. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/start_game_if_5.mcfunction +0 -0
  109. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/start_game_while_4.mcfunction +0 -0
  110. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/start_game_while_body_4.mcfunction +0 -0
  111. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_basic_if_if_1.mcfunction +0 -0
  112. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_basic_if_if_2.mcfunction +0 -0
  113. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_basic_if_if_3.mcfunction +0 -0
  114. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_basic_while_while_2.mcfunction +0 -0
  115. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_basic_while_while_4.mcfunction +0 -0
  116. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_basic_while_while_body_2.mcfunction +0 -0
  117. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_basic_while_while_body_4.mcfunction +0 -0
  118. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_if_if_1.mcfunction +0 -0
  119. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_if_if_2.mcfunction +0 -0
  120. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_if_if_3.mcfunction +0 -0
  121. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_if_if_4.mcfunction +0 -0
  122. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_nested_control_while_2.mcfunction +0 -0
  123. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_nested_control_while_body_2.mcfunction +0 -0
  124. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_nested_control_while_body_2_else_1.mcfunction +0 -0
  125. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_nested_control_while_body_2_else_1_if_1.mcfunction +0 -0
  126. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_nested_control_while_body_2_if_1.mcfunction +0 -0
  127. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_nested_control_while_body_2_if_1_if_1.mcfunction +0 -0
  128. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_nested_control_while_body_2_if_2.mcfunction +0 -0
  129. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_scope_scenarios_if_1.mcfunction +0 -0
  130. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_scope_scenarios_if_2.mcfunction +0 -0
  131. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_scope_scenarios_if_3.mcfunction +0 -0
  132. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_scope_scenarios_if_4.mcfunction +0 -0
  133. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_while_while_3.mcfunction +0 -0
  134. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_while_while_6.mcfunction +0 -0
  135. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_while_while_body_3.mcfunction +0 -0
  136. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_complex_while_while_body_6.mcfunction +0 -0
  137. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_complex_expressions_if_1.mcfunction +0 -0
  138. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_complex_expressions_if_3.mcfunction +0 -0
  139. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_complex_expressions_while_2.mcfunction +0 -0
  140. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_complex_expressions_while_body_2.mcfunction +0 -0
  141. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_error_handling_if_1.mcfunction +0 -0
  142. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_error_handling_if_2.mcfunction +0 -0
  143. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_error_handling_while_3.mcfunction +0 -0
  144. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_error_handling_while_body_3.mcfunction +0 -0
  145. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_performance_while_2.mcfunction +0 -0
  146. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_performance_while_4.mcfunction +0 -0
  147. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_performance_while_body_2.mcfunction +0 -0
  148. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_performance_while_body_2_if_1.mcfunction +0 -0
  149. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_performance_while_body_4.mcfunction +0 -0
  150. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_performance_while_body_4_while_2.mcfunction +0 -0
  151. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_performance_while_body_4_while_body_2.mcfunction +0 -0
  152. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_scoped_functions_if_1.mcfunction +0 -0
  153. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_scoped_functions_if_3.mcfunction +0 -0
  154. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_scoped_functions_while_2.mcfunction +0 -0
  155. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_scoped_functions_while_body_2.mcfunction +0 -0
  156. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_variable_substitution_if_1.mcfunction +0 -0
  157. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_variable_substitution_if_3.mcfunction +0 -0
  158. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_variable_substitution_while_2.mcfunction +0 -0
  159. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_variable_substitution_while_body_2.mcfunction +0 -0
  160. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_assignments_if_1.mcfunction +0 -0
  161. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_assignments_if_3.mcfunction +0 -0
  162. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_assignments_while_2.mcfunction +0 -0
  163. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_assignments_while_body_2.mcfunction +0 -0
  164. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_functions_if_1.mcfunction +0 -0
  165. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_functions_if_3.mcfunction +0 -0
  166. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_functions_while_2.mcfunction +0 -0
  167. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_functions_while_body_2.mcfunction +0 -0
  168. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_raw_if_1.mcfunction +0 -0
  169. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_raw_while_2.mcfunction +0 -0
  170. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_raw_while_body_2.mcfunction +0 -0
  171. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_scopes_if_1.mcfunction +0 -0
  172. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_scopes_if_2.mcfunction +0 -0
  173. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_scopes_if_3.mcfunction +0 -0
  174. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_scopes_if_4.mcfunction +0 -0
  175. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_tellraw_else_1.mcfunction +0 -0
  176. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_tellraw_if_1.mcfunction +0 -0
  177. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_tellraw_if_3.mcfunction +0 -0
  178. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_tellraw_while_2.mcfunction +0 -0
  179. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_control_with_tellraw_while_body_2.mcfunction +0 -0
  180. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_if_else_else_1.mcfunction +0 -0
  181. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_if_else_else_2.mcfunction +0 -0
  182. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_if_else_else_3.mcfunction +0 -0
  183. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_if_else_if_1.mcfunction +0 -0
  184. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_if_else_if_2.mcfunction +0 -0
  185. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_if_else_if_3.mcfunction +0 -0
  186. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_main_while_0.mcfunction +0 -0
  187. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_main_while_body_0.mcfunction +0 -0
  188. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_else_1.mcfunction +0 -0
  189. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_else_2.mcfunction +0 -0
  190. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_else_2_else_0.mcfunction +0 -0
  191. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_else_2_if_0.mcfunction +0 -0
  192. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_if_1.mcfunction +0 -0
  193. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_if_1_else_0.mcfunction +0 -0
  194. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_if_1_if_0.mcfunction +0 -0
  195. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_if_1_if_0_else_0.mcfunction +0 -0
  196. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_if_1_if_0_if_0.mcfunction +0 -0
  197. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_if_2.mcfunction +0 -0
  198. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_if_2_else_0.mcfunction +0 -0
  199. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_nested_if_if_2_if_0.mcfunction +0 -0
  200. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_scope_conditionals_if_1.mcfunction +0 -0
  201. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_scope_conditionals_if_2.mcfunction +0 -0
  202. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_scope_conditionals_if_3.mcfunction +0 -0
  203. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_scope_conditionals_while_4.mcfunction +0 -0
  204. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_scope_conditionals_while_5.mcfunction +0 -0
  205. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_scope_conditionals_while_body_4.mcfunction +0 -0
  206. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_scope_conditionals_while_body_5.mcfunction +0 -0
  207. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_scope_interactions_if_1.mcfunction +0 -0
  208. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_scope_interactions_if_2.mcfunction +0 -0
  209. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_scope_interactions_if_3.mcfunction +0 -0
  210. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_while_break_while_2.mcfunction +0 -0
  211. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_while_break_while_body_2.mcfunction +0 -0
  212. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_while_break_while_body_2_if_1.mcfunction +0 -0
  213. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/test_while_break_while_body_2_if_2.mcfunction +0 -0
  214. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/tick_if_1.mcfunction +0 -0
  215. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/tick_if_2.mcfunction +0 -0
  216. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/tick_if_2_while_1.mcfunction +0 -0
  217. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/tick_if_2_while_body_1.mcfunction +0 -0
  218. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/weapon_effects_else_1.mcfunction +0 -0
  219. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test/function/weapon_effects_if_1.mcfunction +0 -0
  220. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test_final_template_fixed/function/main_else_8.mcfunction +0 -0
  221. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/test_final_template_fixed/function/main_if_8.mcfunction +0 -0
  222. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/while_test/function/main_while_0.mcfunction +0 -0
  223. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/data/while_test/function/main_while_body_0.mcfunction +0 -0
  224. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/dist.zip +0 -0
  225. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/.env +0 -0
  226. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/404.html +0 -0
  227. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/Gemfile +0 -0
  228. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/README.md +0 -0
  229. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_config.yml +0 -0
  230. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_docs/contributing.md +0 -0
  231. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_docs/docs-hub.md +0 -0
  232. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_docs/documentation.md +0 -0
  233. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_docs/language-reference.md +0 -0
  234. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_includes/head-custom.html +0 -0
  235. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_includes/navigation.html +0 -0
  236. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_layouts/default.html +0 -0
  237. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_layouts/page.html +0 -0
  238. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_plugins/test_version.rb +0 -0
  239. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/_plugins/version_reader.rb +0 -0
  240. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/assets/css/style.css +0 -0
  241. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/docs.md +0 -0
  242. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/downloads.md +0 -0
  243. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/icons/favicon-16.png +0 -0
  244. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/icons/favicon-32.png +0 -0
  245. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/icons/favicon-48.png +0 -0
  246. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/icons/favicon-64.png +0 -0
  247. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/icons/icon-1024.png +0 -0
  248. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/icons/icon-128.png +0 -0
  249. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/icons/icon-256.png +0 -0
  250. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/icons/icon-512.png +0 -0
  251. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/docs/icons/icon-64.png +0 -0
  252. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/examples/hello_world.mdl +0 -0
  253. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/examples/scope_examples.mdl +0 -0
  254. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/examples/simple_counter.mdl +0 -0
  255. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/icons/favicon-16.png +0 -0
  256. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/icons/favicon-32.png +0 -0
  257. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/icons/favicon-48.png +0 -0
  258. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/icons/favicon-64.png +0 -0
  259. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/icons/icon-1024.png +0 -0
  260. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/icons/icon-128.png +0 -0
  261. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/icons/icon-256.png +0 -0
  262. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/icons/icon-512.png +0 -0
  263. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/icons/icon-64.png +0 -0
  264. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/item_modifiers/diamond_sword.json +0 -0
  265. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/item_modifiers/enchant_tool.json +0 -0
  266. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/item_modifiers/test_item_modifier.json +0 -0
  267. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/loot_tables/diamond_sword.json +0 -0
  268. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/loot_tables/epic_loot.json +0 -0
  269. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/loot_tables/main_loot.json +0 -0
  270. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/loot_tables/test_loot.json +0 -0
  271. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language/ast_nodes.py +0 -0
  272. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language/dir_map.py +0 -0
  273. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language/mdl_compiler.py +0 -0
  274. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language/mdl_errors.py +0 -0
  275. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language/mdl_lexer.py +0 -0
  276. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language/mdl_linter.py +0 -0
  277. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language/mdl_parser.py +0 -0
  278. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language/utils.py +0 -0
  279. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language.egg-info/dependency_links.txt +0 -0
  280. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language.egg-info/entry_points.txt +0 -0
  281. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language.egg-info/requires.txt +0 -0
  282. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/minecraft_datapack_language.egg-info/top_level.txt +0 -0
  283. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/my_awesome_pack/README.md +0 -0
  284. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/my_awesome_pack/minecraft_datapack_language.mdl +0 -0
  285. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/predicates/diamond_sword.json +0 -0
  286. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/predicates/has_mana.json +0 -0
  287. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/predicates/other_predicate.json +0 -0
  288. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/predicates/test_predicate.json +0 -0
  289. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/pyproject.toml +0 -0
  290. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/recipes/custom_pickaxe.json +0 -0
  291. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/recipes/diamond_sword.json +0 -0
  292. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/recipes/first.json +0 -0
  293. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/recipes/inlet.json +0 -0
  294. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/recipes/main_recipe.json +0 -0
  295. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/recipes/outlet.json +0 -0
  296. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/recipes/pipe.json +0 -0
  297. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/recipes/second.json +0 -0
  298. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/recipes/test_recipe.json +0 -0
  299. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/recipes/wrench.json +0 -0
  300. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/UpdateMDL.sh +0 -0
  301. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/bootstrap.ps1 +0 -0
  302. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/bootstrap.sh +0 -0
  303. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/build_pkg.ps1 +0 -0
  304. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/build_pkg.sh +0 -0
  305. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/dev_build.ps1 +0 -0
  306. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/dev_build.sh +0 -0
  307. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/dev_setup.ps1 +0 -0
  308. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/dev_setup.sh +0 -0
  309. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/git-bash/bootstrap-gitbash.sh +0 -0
  310. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/git-bash/build_pkg-gitbash.sh +0 -0
  311. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/git-bash/test_cli-gitbash.sh +0 -0
  312. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/release.sh +0 -0
  313. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/test_cli.ps1 +0 -0
  314. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/test_cli.sh +0 -0
  315. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/test_dev.ps1 +0 -0
  316. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/test_dev.sh +0 -0
  317. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/update_docs.sh +0 -0
  318. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/scripts/update_version_info.sh +0 -0
  319. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/setup.cfg +0 -0
  320. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/structures/diamond_sword.json +0 -0
  321. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/structures/test_structure.json +0 -0
  322. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/structures/workshop.json +0 -0
  323. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/test_all_registry.mdl +0 -0
  324. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/test_complex_scenarios.py +0 -0
  325. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/test_comprehensive_end_to_end.py +0 -0
  326. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/README.md +0 -0
  327. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/icons/favicon-16.png +0 -0
  328. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/icons/favicon-32.png +0 -0
  329. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/icons/favicon-48.png +0 -0
  330. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/icons/favicon-64.png +0 -0
  331. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/icons/icon-1024.png +0 -0
  332. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/icons/icon-128.png +0 -0
  333. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/icons/icon-256.png +0 -0
  334. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/icons/icon-512.png +0 -0
  335. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/language-configuration.json +0 -0
  336. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/package-lock.json +0 -0
  337. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/package.json +0 -0
  338. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/snippets/mdl.json +0 -0
  339. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/src/extension.ts +0 -0
  340. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/syntaxes/mdl.tmLanguage.json +0 -0
  341. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/themes/mdl-color-theme.json +0 -0
  342. {minecraft_datapack_language-15.4.29 → minecraft_datapack_language-15.4.30}/vscode-extension/tsconfig.json +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: minecraft-datapack-language
3
- Version: 15.4.29
3
+ Version: 15.4.30
4
4
  Summary: Compile MDL language with explicit scoping into a Minecraft datapack (1.21+ ready). Features variables, control flow, error handling, and VS Code extension.
5
5
  Project-URL: Homepage, https://www.mcmdl.com
6
6
  Project-URL: Documentation, https://www.mcmdl.com/docs
@@ -0,0 +1,3 @@
1
+ current: "15.4.29"
2
+ tag: "v15.4.29"
3
+ updated_at: "2025-09-04T02:43:42Z"
@@ -47,29 +47,6 @@ mdl build --mdl . -o dist --ignore-warnings
47
47
 
48
48
  ### Check Command
49
49
 
50
- Validate MDL files without building:
51
-
52
- ```bash
53
- mdl check <files>
54
- ```
55
-
56
- **Examples:**
57
- ```bash
58
- # Check single file
59
- mdl check hello.mdl
60
-
61
- # Check current directory
62
- mdl check .
63
-
64
- # Check entire directory
65
- mdl check myproject/
66
-
67
- # Check with warnings suppressed
68
- mdl check myproject/ --ignore-warnings
69
- ```
70
-
71
- ### Check Command
72
-
73
50
  Validate MDL files for syntax and semantic errors:
74
51
 
75
52
  ```bash
@@ -103,9 +80,9 @@ The check command provides comprehensive error reporting with:
103
80
  Error 1: MDLSyntaxError in test.mdl:15:8
104
81
  Missing closing brace for if statement
105
82
  Context:
106
- 13: if (score > 10) {
83
+ 13: if $score<@s>$ > 10 {
107
84
  14: say "High score!"
108
- 15: score = 0
85
+ 15: score<@s> = 0
109
86
  16: }
110
87
 
111
88
  Suggestion: Add closing brace '}' after line 15
@@ -114,7 +91,7 @@ Error 2: MDLLexerError in test.mdl:22:12
114
91
  Unterminated string literal
115
92
  Context:
116
93
  20: say "Hello world
117
- 21: score = 10
94
+ 21: score<@s> = 10
118
95
  22: say "Goodbye
119
96
 
120
97
  Suggestion: Add closing quote '"' at the end of line 20
@@ -230,7 +207,7 @@ Error 2: MDLLexerError in test.mdl:22:12
230
207
  Unterminated string literal
231
208
  Context:
232
209
  20: say "Hello world
233
- 21: score = 10
210
+ 21: score<@s> = 10
234
211
  22: say "Goodbye
235
212
 
236
213
  Suggestion: Add closing quote '"' at the end of line 20
@@ -238,10 +215,10 @@ Suggestion: Add closing quote '"' at the end of line 20
238
215
  Error 3: MDLValidationError in test.mdl:8:5
239
216
  Undefined variable 'player_score'
240
217
  Context:
241
- 6: score = 10
242
- 7: lives = 3
243
- 8: player_score = 5
244
- 9: say "Score: $score$"
218
+ 6: score<@s> = 10
219
+ 7: lives<@s> = 3
220
+ 8: player_score<@s> = 5
221
+ 9: say "Score: $score<@s>$"
245
222
 
246
223
  Suggestion: Declare the variable first with 'variable player_score = 0'
247
224
 
@@ -279,11 +256,11 @@ If you prefer to create files manually, you can start with:
279
256
  pack "hello" "My first datapack" 82;
280
257
  namespace "hello";
281
258
 
282
- function "main" {
283
- say Hello, Minecraft!;
259
+ function hello:main<@s> {
260
+ say "Hello, Minecraft!";
284
261
  }
285
262
 
286
- on_load "hello:main";
263
+ on_load hello:main<@s>;
287
264
  ```
288
265
 
289
266
  2. **Check the file:**
@@ -321,26 +298,26 @@ MDL supports explicit scope selectors in if/while conditions, allowing you to ov
321
298
 
322
299
  ```mdl
323
300
  // Variables with different scopes
324
- var num playerScore = 0; // Defaults to @s
325
- var num globalCounter scope<global> = 0; // Global scope
326
- var num teamScore scope<@a[team=red]> = 0; // Team scope
301
+ var num playerScore<@s> = 0; // Defaults to @s
302
+ var num globalCounter<@a> = 0; // Global scope
303
+ var num teamScore<@a[team=red]> = 0; // Team scope
327
304
 
328
- function "main" {
305
+ function hello:main<@s> {
329
306
  // Use explicit scope in conditions
330
- if "$playerScore<@s>$ > 10" {
307
+ if $playerScore<@s>$ > 10 {
331
308
  say "Current player score is high!";
332
309
  }
333
310
 
334
- if "$globalCounter<global>$ > 100" {
311
+ if $globalCounter<@a>$ > 100 {
335
312
  say "Global counter reached milestone!";
336
313
  }
337
314
 
338
- if "$teamScore<@a[team=red]>$ > 50" {
315
+ if $teamScore<@a[team=red]>$ > 50 {
339
316
  say "Red team is winning!";
340
317
  }
341
318
 
342
319
  // Check another player's score
343
- if "$playerScore<@p[name=Steve]>$ > 5" {
320
+ if $playerScore<@p[name=Steve]>$ > 5 {
344
321
  say "Steve has a good score!";
345
322
  }
346
323
  }
@@ -14,12 +14,12 @@ A simple datapack that says hello when loaded:
14
14
  pack "hello" "A simple hello world datapack" 82;
15
15
  namespace "hello";
16
16
 
17
- function "main" {
18
- say Hello, Minecraft!;
17
+ function hello:main<@s> {
18
+ say "Hello, Minecraft!";
19
19
  tellraw @a {"text":"Welcome to my datapack!","color":"green"};
20
20
  }
21
21
 
22
- on_load "hello:main";
22
+ on_load hello:main<@s>;
23
23
  ```
24
24
 
25
25
  ## Counter with Scoped Variables
@@ -30,20 +30,20 @@ Demonstrates variables with different scopes:
30
30
  pack "counter" "Counter example" 82;
31
31
  namespace "counter";
32
32
 
33
- var num globalCounter scope<global> = 0;
34
- var num playerCounter = 0; // Defaults to player-specific scope
33
+ var num globalCounter<@a> = 0;
34
+ var num playerCounter<@s> = 0; // Defaults to player-specific scope
35
35
 
36
- function "increment" {
37
- globalCounter<global> = globalCounter<global> + 1;
38
- playerCounter<@s> = playerCounter<@s> + 1;
39
- say Global: $globalCounter$, Player: $playerCounter$;
36
+ function counter:increment<@s> {
37
+ globalCounter<@a> = $globalCounter<@a>$ + 1;
38
+ playerCounter<@s> = $playerCounter<@s>$ + 1;
39
+ say "Global: $globalCounter<@a>$, Player: $playerCounter<@s>$";
40
40
  }
41
41
 
42
- function "show_all" {
43
- function "counter:increment<@a>";
42
+ function counter:show_all<@s> {
43
+ exec counter:increment<@a>;
44
44
  }
45
45
 
46
- on_load "counter:increment";
46
+ on_load counter:increment<@s>;
47
47
  ```
48
48
 
49
49
  ## While Loop Example
@@ -54,18 +54,18 @@ A countdown timer using a while loop:
54
54
  pack "loops" "Loop example" 82;
55
55
  namespace "loops";
56
56
 
57
- var num counter scope<global> = 0;
57
+ var num counter<@a> = 0;
58
58
 
59
- function "countdown" {
60
- counter<global> = 5;
61
- while "$counter$ > 0" {
62
- say Countdown: $counter$;
63
- counter<global> = counter<global> - 1;
59
+ function loops:countdown<@s> {
60
+ counter<@a> = 5;
61
+ while $counter<@a>$ > 0 {
62
+ say "Countdown: $counter<@a>$";
63
+ counter<@a> = $counter<@a>$ - 1;
64
64
  }
65
- say Blast off!;
65
+ say "Blast off!";
66
66
  }
67
67
 
68
- on_load "loops:countdown";
68
+ on_load loops:countdown<@s>;
69
69
  ```
70
70
 
71
71
  ## Raw Commands
@@ -76,14 +76,14 @@ Using raw Minecraft commands:
76
76
  pack "raw" "Raw command example" 82;
77
77
  namespace "raw";
78
78
 
79
- function "custom" {
79
+ function raw:custom<@s> {
80
80
  // Use raw Minecraft commands
81
81
  effect give @s minecraft:speed 10 1;
82
82
  particle minecraft:explosion ~ ~ ~ 1 1 1 0 10;
83
83
  playsound minecraft:entity.player.levelup player @s ~ ~ ~ 1 1;
84
84
  }
85
85
 
86
- on_load "raw:custom";
86
+ on_load raw:custom<@s>;
87
87
  ```
88
88
 
89
89
  ## Complete Game Example
@@ -95,23 +95,23 @@ pack "game" "Complete game example" 82;
95
95
  namespace "game";
96
96
 
97
97
  // Variables
98
- var num score = 0; // Defaults to player-specific scope
99
- var num level = 1; // Defaults to player-specific scope
100
- var num globalTimer scope<global> = 0;
98
+ var num score<@s> = 0; // Defaults to player-specific scope
99
+ var num level<@s> = 1; // Defaults to player-specific scope
100
+ var num globalTimer<@a> = 0;
101
101
 
102
102
  // Main game function
103
103
  function "start_game" {
104
104
  score<@s> = 0;
105
105
  level<@s> = 1;
106
- say Game started! Level: $level$, Score: $score$;
106
+ say "Game started! Level: $level<@s>$, Score: $score<@s>$";
107
107
  }
108
108
 
109
109
  // Level up function
110
110
  function "level_up" {
111
- if "$score$ >= 100" {
111
+ if $score<@s>$ >= 100 {
112
112
  level<@s> = level<@s> + 1;
113
113
  score<@s> = score<@s> - 100;
114
- say Level up! New level: $level$;
114
+ say "Level up! New level: $level<@s>$";
115
115
  tellraw @a {"text":"Player leveled up!","color":"gold"};
116
116
  }
117
117
  }
@@ -119,16 +119,16 @@ function "level_up" {
119
119
  // Timer function
120
120
  function "update_timer" {
121
121
  globalTimer<global> = globalTimer<global> + 1;
122
- if "$globalTimer$ >= 1200" { // 60 seconds
122
+ if $globalTimer<@a>$ >= 1200 { // 60 seconds
123
123
  globalTimer<global> = 0;
124
- say Time's up! Final score: $score$;
124
+ say "Time's up! Final score: $score<@s>$";
125
125
  }
126
126
  }
127
127
 
128
128
  // Add score function
129
129
  function "add_score" {
130
130
  score<@s> = score<@s> + 10;
131
- say Score: $score$;
131
+ say "Score: $score<@s>$";
132
132
  function "game:level_up";
133
133
  }
134
134
 
@@ -146,9 +146,9 @@ pack "teams" "Team system example" 82;
146
146
  namespace "teams";
147
147
 
148
148
  // Team variables
149
- var num redScore scope<@a[team=red]> = 0;
150
- var num blueScore scope<@a[team=blue]> = 0;
151
- var num gameTimer scope<global> = 0;
149
+ var num redScore<@a[team=red]> = 0;
150
+ var num blueScore<@a[team=blue]> = 0;
151
+ var num gameTimer<@a> = 0;
152
152
 
153
153
  // Initialize teams
154
154
  function "init" {
@@ -162,13 +162,13 @@ function "init" {
162
162
  function "update" {
163
163
  gameTimer<global> = gameTimer<global> + 1;
164
164
 
165
- if "$gameTimer$ >= 2400" { // 2 minutes
165
+ if $gameTimer<@a>$ >= 2400 { // 2 minutes
166
166
  gameTimer<global> = 0;
167
- say Game over! Red: $redScore$, Blue: $blueScore$;
167
+ say "Game over! Red: $redScore<@a[team=red]>$, Blue: $blueScore<@a[team=blue]>$";
168
168
 
169
- if "$redScore$ > $blueScore$" {
169
+ if $redScore<@a[team=red]>$ > $blueScore<@a[team=blue]>$ {
170
170
  tellraw @a {"text":"Red team wins!","color":"red"};
171
- } else if "$blueScore$ > $redScore$" {
171
+ } else if $blueScore<@a[team=blue]>$ > $redScore<@a[team=red]>$ {
172
172
  tellraw @a {"text":"Blue team wins!","color":"blue"};
173
173
  } else {
174
174
  tellraw @a {"text":"It's a tie!","color":"yellow"};
@@ -179,13 +179,13 @@ function "update" {
179
179
  // Add points to red team
180
180
  function "red_point" {
181
181
  redScore<@a[team=red]> = redScore<@a[team=red]> + 1;
182
- say Red team score: $redScore$;
182
+ say "Red team score: $redScore<@a[team=red]>$";
183
183
  }
184
184
 
185
185
  // Add points to blue team
186
186
  function "blue_point" {
187
187
  blueScore<@a[team=blue]> = blueScore<@a[team=blue]> + 1;
188
- say Blue team score: $blueScore$;
188
+ say "Blue team score: $blueScore<@a[team=blue]>$";
189
189
  }
190
190
 
191
191
  // Hooks
@@ -202,7 +202,7 @@ Organizing code across multiple files:
202
202
  pack "multifile" "Multi-file example" 82;
203
203
  namespace "core";
204
204
 
205
- var num playerCount scope<global> = 0;
205
+ var num playerCount<@a> = 0;
206
206
 
207
207
  function "init" {
208
208
  playerCount = 0;
@@ -217,7 +217,7 @@ on_load "core:init";
217
217
  namespace "ui";
218
218
 
219
219
  function "show_hud" {
220
- tellraw @a {"text":"Players: $playerCount$","color":"green"};
220
+ tellraw @a {"text":"Players: $playerCount<@a>$","color":"green"};
221
221
  }
222
222
 
223
223
  function "update_hud" {
@@ -250,8 +250,8 @@ namespace "scopes";
250
250
 
251
251
  // Variables with different scopes
252
252
  var num playerScore = 0; // Defaults to @s
253
- var num globalCounter scope<global> = 0; // Global scope
254
- var num teamScore scope<@a[team=red]> = 0; // Team scope
253
+ var num globalCounter<@a> = 0; // Global scope
254
+ var num teamScore<@a[team=red]> = 0; // Team scope
255
255
 
256
256
  function "main" {
257
257
  // Test explicit scope overrides in if conditions
@@ -280,7 +280,7 @@ function "main" {
280
280
  // Use explicit scopes in while loops too
281
281
  while "$globalCounter<global>$ < 10" {
282
282
  globalCounter<global> = globalCounter<global> + 1;
283
- say "Counter: $globalCounter$";
283
+ say "Counter: $globalCounter<@a>$";
284
284
  }
285
285
  }
286
286
 
@@ -23,12 +23,12 @@ Create your first MDL file:
23
23
  pack "hello" "My first datapack" 82;
24
24
  namespace "hello";
25
25
 
26
- function "main" {
27
- say Hello, Minecraft!;
26
+ function hello:main<@s> {
27
+ say "Hello, Minecraft!";
28
28
  tellraw @a {"text":"Welcome to my datapack!","color":"green"};
29
29
  }
30
30
 
31
- on_load "hello:main";
31
+ on_load hello:main<@s>;
32
32
  ```
33
33
 
34
34
  Compile it:
@@ -47,17 +47,17 @@ Variables store numbers and can be scoped to different entities. MDL uses an **e
47
47
 
48
48
  ```mdl
49
49
  // Player-specific variable (default)
50
- var num playerScore = 0;
50
+ var num playerScore<@s> = 0;
51
51
 
52
52
  // Server-wide variable
53
- var num globalCounter scope<global> = 0;
53
+ var num globalCounter<@a> = 0;
54
54
 
55
55
  // Team-specific variable
56
- var num teamScore scope<@a[team=red]> = 0;
56
+ var num teamScore<@a[team=red]> = 0;
57
57
 
58
58
  // Access variables with explicit scopes
59
59
  playerScore<@s> = 42; // Player scope
60
- globalCounter<global> = 100; // Global scope
60
+ globalCounter<@a> = 100; // Global scope
61
61
  teamScore<@a[team=red]> = 5; // Team scope
62
62
  ```
63
63
 
@@ -66,11 +66,11 @@ teamScore<@a[team=red]> = 5; // Team scope
66
66
  Use `$variable$` to read variable values. Variables automatically resolve to their declared scopes:
67
67
 
68
68
  ```mdl
69
- say Your score: $playerScore$;
70
- tellraw @a {"text":"Global counter: $globalCounter$","color":"gold"};
69
+ say "Your score: $playerScore<@s>$";
70
+ tellraw @a {"text":"Global counter: $globalCounter<@a>$","color":"gold"};
71
71
 
72
- if "$playerScore$ > 100" {
73
- say High score!;
72
+ if $playerScore<@s>$ > 100 {
73
+ say "High score!";
74
74
  }
75
75
  ```
76
76
 
@@ -79,16 +79,16 @@ if "$playerScore$ > 100" {
79
79
  Functions contain Minecraft commands:
80
80
 
81
81
  ```mdl
82
- function "my_function" {
83
- say This is my function!;
82
+ function hello:my_function<@s> {
83
+ say "This is my function!";
84
84
  effect give @s minecraft:speed 10 1;
85
85
  }
86
86
 
87
87
  // Call a function
88
- function "hello:my_function";
88
+ exec hello:my_function<@s>;
89
89
 
90
90
  // Call a function for all players
91
- function "hello:my_function<@a>";
91
+ exec hello:my_function<@a>;
92
92
  ```
93
93
 
94
94
  ### Control Structures
@@ -97,7 +97,7 @@ MDL supports real if/else statements and while loops:
97
97
 
98
98
  ```mdl
99
99
  // If statement
100
- if "$playerScore$ > 50" {
100
+ if $playerScore<@s>$ > 50 {
101
101
  say Great job!;
102
102
  } else {
103
103
  say Keep trying!;
@@ -157,7 +157,7 @@ namespace "example";
157
157
 
158
158
  // Variables
159
159
  var num playerScore = 0; // Defaults to player-specific scope
160
- var num globalTimer scope<global> = 0;
160
+ var num globalTimer<@a> = 0;
161
161
 
162
162
  // Initialize function
163
163
  function "init" {
@@ -17,7 +17,7 @@ Only the first file needs a pack declaration:
17
17
  pack "my_project" "A multi-file project" 82;
18
18
  namespace "core";
19
19
 
20
- var num playerCount scope<global> = 0;
20
+ var num playerCount<@a> = 0;
21
21
 
22
22
  function "init" {
23
23
  playerCount<global> = 0;
@@ -109,7 +109,7 @@ Variables from all files are automatically merged:
109
109
 
110
110
  ```mdl
111
111
  // core.mdl
112
- var num globalTimer scope<global> = 0;
112
+ var num globalTimer<@a> = 0;
113
113
  var num playerScore = 0; // Defaults to player-specific scope
114
114
  ```
115
115
 
@@ -126,12 +126,12 @@ When working with multiple files, you can use explicit scope selectors in condit
126
126
 
127
127
  ```mdl
128
128
  // core.mdl
129
- var num globalTimer scope<global> = 0;
129
+ var num globalTimer<@a> = 0;
130
130
  var num playerScore = 0; // Defaults to player-specific scope
131
131
 
132
132
  function "check_status" {
133
133
  // Check global timer
134
- if "$globalTimer<global>$ > 1000" {
134
+ if "$globalTimer<@a>$ > 1000" {
135
135
  say "Game has been running for a while!";
136
136
  }
137
137
 
@@ -170,11 +170,11 @@ Here's a complete example with multiple files:
170
170
  pack "adventure" "Adventure game" 82;
171
171
  namespace "core";
172
172
 
173
- var num gameState scope<global> = 0;
173
+ var num gameState<@a> = 0;
174
174
  var num playerLevel = 1; // Defaults to player-specific scope
175
175
 
176
176
  function "init" {
177
- gameState<global> = 0;
177
+ gameState<@a> = 0;
178
178
  playerLevel<@s> = 1;
179
179
  say Adventure game initialized!;
180
180
  }
@@ -243,7 +243,7 @@ mdl build --mdl "main.mdl combat.mdl ui.mdl game.mdl" -o dist
243
243
  3. **Clear naming**: Use descriptive file and namespace names
244
244
  4. **Shared variables**: Declare shared variables in the main file
245
245
  5. **Function organization**: Group related functions in the same file
246
- 6. **Proper scoping**: Use `scope<global>` for server-wide variables, no scope for player-specific variables
246
+ 6. **Proper scoping**: Use `<@a>` for server-wide variables, no scope for player-specific variables
247
247
  7. **Explicit scope access**: Always access variables with their scope like `variable<scope>`
248
248
 
249
249
  ## File Structure Example
@@ -133,7 +133,7 @@ def create_advanced_pack():
133
133
 
134
134
  # Functions with variables and control flow using explicit scopes
135
135
  ns.function("variable_demo",
136
- "var num counter scope<global> = 0",
136
+ "var num counter<@a> = 0",
137
137
  "counter<global> = 10",
138
138
  "counter<global> = counter<global> + 5",
139
139
  "if \"$counter$ >= 15\" {",
@@ -154,7 +154,7 @@ def create_advanced_pack():
154
154
  )
155
155
 
156
156
  ns.function("loop_demo",
157
- "var num countdown scope<global> = 5",
157
+ "var num countdown<@a> = 5",
158
158
  "while \"$countdown$ > 0\" {",
159
159
  " say Countdown: $countdown$",
160
160
  " countdown<global> = countdown<global> - 1",
@@ -433,7 +433,7 @@ def create_complete_pack():
433
433
  # Core namespace
434
434
  core = p.namespace("core")
435
435
  core.function("init",
436
- "var num gameState scope<global> = 0",
436
+ "var num gameState<@a> = 0",
437
437
  "var num playerLevel = 1",
438
438
  "gameState<global> = 0",
439
439
  "playerLevel<@s> = 1",
@@ -107,7 +107,7 @@ The extension highlights the following MDL elements:
107
107
 
108
108
  - **Pack declarations**: `pack "Name" description "Desc" pack_format 48`
109
109
  - **Namespaces**: `namespace "example"`
110
- - **Functions**: `function "name":`
110
+ - **Functions**: `function namespace:name<@s>`
111
111
  - **Lifecycle hooks**: `on_load`, `on_tick`
112
112
  - **Tags**: `tag function "minecraft:tick":`
113
113
  - **Comments**: `# This is a comment`
@@ -130,19 +130,18 @@ pip install minecraft-datapack-language
130
130
  ```mdl
131
131
  // hello.mdl
132
132
  pack "My First Pack" "A simple example" 82;
133
-
134
133
  namespace "example";
135
134
 
136
- var num counter = 0;
135
+ var num counter<@s> = 0;
137
136
 
138
- function "hello" {
139
- say Hello, Minecraft!;
137
+ function example:hello<@s> {
138
+ say "Hello, Minecraft!";
140
139
  tellraw @a {"text":"Welcome to my datapack!","color":"green"};
141
- counter = counter + 1;
142
- say Counter: $counter$;
140
+ counter<@s> = $counter<@s>$ + 1;
141
+ say "Counter: $counter<@s>$";
143
142
  }
144
143
 
145
- on_load "example:hello";
144
+ on_load example:hello<@s>;
146
145
  ```
147
146
 
148
147
  ### Build and Run
@@ -171,11 +170,11 @@ execute unless score @s counter matches 5.. run say Low counter!
171
170
  **MDL:**
172
171
  ```mdl
173
172
  // Clean, readable, and maintainable
174
- counter = counter + 1;
175
- if "$counter$ > 5" {
176
- say High counter!;
173
+ counter<@s> = $counter<@s>$ + 1;
174
+ if $counter<@s>$ > 5 {
175
+ say "High counter!";
177
176
  } else {
178
- say Low counter!;
177
+ say "Low counter!";
179
178
  }
180
179
  ```
181
180
 
@@ -196,7 +195,7 @@ if "$counter$ > 5" {
196
195
  Write real if/else statements and while loops:
197
196
 
198
197
  ```mdl
199
- if "$health$ < 10" {
198
+ if $health<@s>$ < 10 {
200
199
  say Health is low!;
201
200
  effect give @s minecraft:regeneration 10 1;
202
201
  } else if "$health$ < 20" {
@@ -16,6 +16,12 @@ __all__ = [
16
16
  "DirMap"
17
17
  ]
18
18
 
19
+ # CLI entry point
20
+ def main():
21
+ """CLI entry point for the mdl command."""
22
+ from .cli import main as cli_main
23
+ return cli_main()
24
+
19
25
  try:
20
26
  from ._version import version as __version__ # written by setuptools-scm
21
27
  except Exception:
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '15.4.29'
32
- __version_tuple__ = version_tuple = (15, 4, 29)
31
+ __version__ = version = '15.4.30'
32
+ __version_tuple__ = version_tuple = (15, 4, 30)
33
33
 
34
- __commit_id__ = commit_id = 'g57db4a809'
34
+ __commit_id__ = commit_id = 'gb88419df1'