.gitignore
CONDITIONALS_IMPLEMENTATION.md
CORE_FEATURES_GUIDE.md
DEVELOPMENT.md
LICENSE
MDL_AI_SPEC_SHEET.md
MDL_LANGUAGE_SPEC.md
Makefile
README.md
pyproject.toml
test_all_registry.mdl
./minecraft_datapack_language/__init__.py
./minecraft_datapack_language/_version.py
./minecraft_datapack_language/ast_nodes.py
./minecraft_datapack_language/cli.py
./minecraft_datapack_language/cli_build.py
./minecraft_datapack_language/cli_check.py
./minecraft_datapack_language/cli_help.py
./minecraft_datapack_language/cli_new.py
./minecraft_datapack_language/cli_utils.py
./minecraft_datapack_language/dir_map.py
./minecraft_datapack_language/expression_processor.py
./minecraft_datapack_language/linter.py
./minecraft_datapack_language/mdl_errors.py
./minecraft_datapack_language/mdl_lexer_js.py
./minecraft_datapack_language/mdl_linter.py
./minecraft_datapack_language/mdl_parser_js.py
./minecraft_datapack_language/pack.py
./minecraft_datapack_language/utils.py
.cursor/rules/aispec.mdc
.github/actions/mdl-compile/action.yml
.github/workflows/ci.yml
.github/workflows/docs.yml
.github/workflows/pypi.yml
.github/workflows/release.yml
.github/workflows/test-examples.yml
.github/workflows/update-website-version.yml
advancements/diamond_sword.json
advancements/first_spell.json
advancements/other_advancement.json
advancements/test_advancement.json
data/complex_scopes/function/main_else_8.mcfunction
data/complex_scopes/function/main_if_8.mcfunction
data/comprehensive_control_test/function/test_basic_if_if_2.mcfunction
data/comprehensive_control_test/function/test_basic_if_if_3.mcfunction
data/comprehensive_control_test/function/test_basic_if_if_4.mcfunction
data/comprehensive_control_test/function/test_complex_if_if_2.mcfunction
data/comprehensive_control_test/function/test_complex_if_if_3.mcfunction
data/comprehensive_control_test/function/test_complex_if_if_4.mcfunction
data/comprehensive_control_test/function/test_complex_if_if_5.mcfunction
data/comprehensive_control_test/function/test_control_complex_expressions_if_2.mcfunction
data/comprehensive_control_test/function/test_control_complex_expressions_if_4.mcfunction
data/comprehensive_control_test/function/test_control_variable_substitution_if_2.mcfunction
data/comprehensive_control_test/function/test_control_with_raw_if_2.mcfunction
data/comprehensive_control_test/function/test_control_with_scopes_if_5.mcfunction
data/comprehensive_control_test/function/test_control_with_tellraw_else_2.mcfunction
data/comprehensive_control_test/function/test_control_with_tellraw_if_2.mcfunction
data/comprehensive_control_test/function/test_control_with_tellraw_if_4.mcfunction
data/comprehensive_control_test/function/test_if_else_else_2.mcfunction
data/comprehensive_control_test/function/test_if_else_else_3.mcfunction
data/comprehensive_control_test/function/test_if_else_else_4.mcfunction
data/comprehensive_control_test/function/test_if_else_if_2.mcfunction
data/comprehensive_control_test/function/test_if_else_if_3.mcfunction
data/comprehensive_control_test/function/test_if_else_if_4.mcfunction
data/comprehensive_control_test/function/test_nested_if_else_2.mcfunction
data/comprehensive_control_test/function/test_nested_if_else_3.mcfunction
data/comprehensive_control_test/function/test_nested_if_else_3_else_0.mcfunction
data/comprehensive_control_test/function/test_nested_if_else_3_if_0.mcfunction
data/comprehensive_control_test/function/test_nested_if_if_2.mcfunction
data/comprehensive_control_test/function/test_nested_if_if_2_else_0.mcfunction
data/comprehensive_control_test/function/test_nested_if_if_2_if_0.mcfunction
data/comprehensive_control_test/function/test_nested_if_if_2_if_0_else_0.mcfunction
data/comprehensive_control_test/function/test_nested_if_if_2_if_0_if_0.mcfunction
data/comprehensive_control_test/function/test_nested_if_if_3.mcfunction
data/comprehensive_control_test/function/test_nested_if_if_3_else_0.mcfunction
data/comprehensive_control_test/function/test_nested_if_if_3_if_0.mcfunction
data/control_test/function/main_if_0.mcfunction
data/control_test/function/main_while_1.mcfunction
data/control_test/function/main_while_body_1.mcfunction
data/if_test/function/main_else_1.mcfunction
data/if_test/function/main_if_1.mcfunction
data/test/function/conditional_demo_else_3.mcfunction
data/test/function/conditional_demo_if_3.mcfunction
data/test/function/conditional_demo_if_3_else_0.mcfunction
data/test/function/conditional_demo_if_3_if_0.mcfunction
data/test/function/conditional_demo_if_3_if_0_else_0.mcfunction
data/test/function/conditional_demo_if_3_if_0_if_0.mcfunction
data/test/function/countdown_while_1.mcfunction
data/test/function/countdown_while_body_1.mcfunction
data/test/function/increase_tick_per_player_if_1.mcfunction
data/test/function/increase_tick_per_player_if_1_if_0.mcfunction
data/test/function/loop_demo_while_2.mcfunction
data/test/function/loop_demo_while_body_2.mcfunction
data/test/function/loop_demo_while_body_2_else_0.mcfunction
data/test/function/loop_demo_while_body_2_if_0.mcfunction
data/test/function/loop_demo_while_body_2_if_2.mcfunction
data/test/function/main_else_0.mcfunction
data/test/function/main_else_1.mcfunction
data/test/function/main_else_5.mcfunction
data/test/function/main_if_0.mcfunction
data/test/function/main_if_1.mcfunction
data/test/function/main_if_5.mcfunction
data/test/function/main_while_0.mcfunction
data/test/function/main_while_1.mcfunction
data/test/function/main_while_2.mcfunction
data/test/function/main_while_6.mcfunction
data/test/function/main_while_7.mcfunction
data/test/function/main_while_body_0.mcfunction
data/test/function/main_while_body_1.mcfunction
data/test/function/main_while_body_2.mcfunction
data/test/function/main_while_body_6.mcfunction
data/test/function/main_while_body_7.mcfunction
data/test/function/scoreboard_demo_while_3.mcfunction
data/test/function/scoreboard_demo_while_body_3.mcfunction
data/test/function/scoreboard_demo_while_body_3_if_1.mcfunction
data/test/function/start_game_if_1.mcfunction
data/test/function/start_game_if_5.mcfunction
data/test/function/start_game_while_4.mcfunction
data/test/function/start_game_while_body_4.mcfunction
data/test/function/test_basic_if_if_1.mcfunction
data/test/function/test_basic_if_if_2.mcfunction
data/test/function/test_basic_if_if_3.mcfunction
data/test/function/test_basic_while_while_2.mcfunction
data/test/function/test_basic_while_while_4.mcfunction
data/test/function/test_basic_while_while_body_2.mcfunction
data/test/function/test_basic_while_while_body_4.mcfunction
data/test/function/test_complex_if_if_1.mcfunction
data/test/function/test_complex_if_if_2.mcfunction
data/test/function/test_complex_if_if_3.mcfunction
data/test/function/test_complex_if_if_4.mcfunction
data/test/function/test_complex_nested_control_while_2.mcfunction
data/test/function/test_complex_nested_control_while_body_2.mcfunction
data/test/function/test_complex_nested_control_while_body_2_else_1.mcfunction
data/test/function/test_complex_nested_control_while_body_2_else_1_if_1.mcfunction
data/test/function/test_complex_nested_control_while_body_2_if_1.mcfunction
data/test/function/test_complex_nested_control_while_body_2_if_1_if_1.mcfunction
data/test/function/test_complex_nested_control_while_body_2_if_2.mcfunction
data/test/function/test_complex_scope_scenarios_if_1.mcfunction
data/test/function/test_complex_scope_scenarios_if_2.mcfunction
data/test/function/test_complex_scope_scenarios_if_3.mcfunction
data/test/function/test_complex_scope_scenarios_if_4.mcfunction
data/test/function/test_complex_while_while_3.mcfunction
data/test/function/test_complex_while_while_6.mcfunction
data/test/function/test_complex_while_while_body_3.mcfunction
data/test/function/test_complex_while_while_body_6.mcfunction
data/test/function/test_control_complex_expressions_if_1.mcfunction
data/test/function/test_control_complex_expressions_if_3.mcfunction
data/test/function/test_control_complex_expressions_while_2.mcfunction
data/test/function/test_control_complex_expressions_while_body_2.mcfunction
data/test/function/test_control_error_handling_if_1.mcfunction
data/test/function/test_control_error_handling_if_2.mcfunction
data/test/function/test_control_error_handling_while_3.mcfunction
data/test/function/test_control_error_handling_while_body_3.mcfunction
data/test/function/test_control_performance_while_2.mcfunction
data/test/function/test_control_performance_while_4.mcfunction
data/test/function/test_control_performance_while_body_2.mcfunction
data/test/function/test_control_performance_while_body_2_if_1.mcfunction
data/test/function/test_control_performance_while_body_4.mcfunction
data/test/function/test_control_performance_while_body_4_while_2.mcfunction
data/test/function/test_control_performance_while_body_4_while_body_2.mcfunction
data/test/function/test_control_scoped_functions_if_1.mcfunction
data/test/function/test_control_scoped_functions_if_3.mcfunction
data/test/function/test_control_scoped_functions_while_2.mcfunction
data/test/function/test_control_scoped_functions_while_body_2.mcfunction
data/test/function/test_control_variable_substitution_if_1.mcfunction
data/test/function/test_control_variable_substitution_if_3.mcfunction
data/test/function/test_control_variable_substitution_while_2.mcfunction
data/test/function/test_control_variable_substitution_while_body_2.mcfunction
data/test/function/test_control_with_assignments_if_1.mcfunction
data/test/function/test_control_with_assignments_if_3.mcfunction
data/test/function/test_control_with_assignments_while_2.mcfunction
data/test/function/test_control_with_assignments_while_body_2.mcfunction
data/test/function/test_control_with_functions_if_1.mcfunction
data/test/function/test_control_with_functions_if_3.mcfunction
data/test/function/test_control_with_functions_while_2.mcfunction
data/test/function/test_control_with_functions_while_body_2.mcfunction
data/test/function/test_control_with_raw_if_1.mcfunction
data/test/function/test_control_with_raw_while_2.mcfunction
data/test/function/test_control_with_raw_while_body_2.mcfunction
data/test/function/test_control_with_scopes_if_1.mcfunction
data/test/function/test_control_with_scopes_if_2.mcfunction
data/test/function/test_control_with_scopes_if_3.mcfunction
data/test/function/test_control_with_scopes_if_4.mcfunction
data/test/function/test_control_with_tellraw_else_1.mcfunction
data/test/function/test_control_with_tellraw_if_1.mcfunction
data/test/function/test_control_with_tellraw_if_3.mcfunction
data/test/function/test_control_with_tellraw_while_2.mcfunction
data/test/function/test_control_with_tellraw_while_body_2.mcfunction
data/test/function/test_if_else_else_1.mcfunction
data/test/function/test_if_else_else_2.mcfunction
data/test/function/test_if_else_else_3.mcfunction
data/test/function/test_if_else_if_1.mcfunction
data/test/function/test_if_else_if_2.mcfunction
data/test/function/test_if_else_if_3.mcfunction
data/test/function/test_main_while_0.mcfunction
data/test/function/test_main_while_body_0.mcfunction
data/test/function/test_nested_if_else_1.mcfunction
data/test/function/test_nested_if_else_2.mcfunction
data/test/function/test_nested_if_else_2_else_0.mcfunction
data/test/function/test_nested_if_else_2_if_0.mcfunction
data/test/function/test_nested_if_if_1.mcfunction
data/test/function/test_nested_if_if_1_else_0.mcfunction
data/test/function/test_nested_if_if_1_if_0.mcfunction
data/test/function/test_nested_if_if_1_if_0_else_0.mcfunction
data/test/function/test_nested_if_if_1_if_0_if_0.mcfunction
data/test/function/test_nested_if_if_2.mcfunction
data/test/function/test_nested_if_if_2_else_0.mcfunction
data/test/function/test_nested_if_if_2_if_0.mcfunction
data/test/function/test_scope_conditionals_if_1.mcfunction
data/test/function/test_scope_conditionals_if_2.mcfunction
data/test/function/test_scope_conditionals_if_3.mcfunction
data/test/function/test_scope_conditionals_while_4.mcfunction
data/test/function/test_scope_conditionals_while_5.mcfunction
data/test/function/test_scope_conditionals_while_body_4.mcfunction
data/test/function/test_scope_conditionals_while_body_5.mcfunction
data/test/function/test_scope_interactions_if_1.mcfunction
data/test/function/test_scope_interactions_if_2.mcfunction
data/test/function/test_scope_interactions_if_3.mcfunction
data/test/function/test_while_break_while_2.mcfunction
data/test/function/test_while_break_while_body_2.mcfunction
data/test/function/test_while_break_while_body_2_if_1.mcfunction
data/test/function/test_while_break_while_body_2_if_2.mcfunction
data/test/function/tick_if_1.mcfunction
data/test/function/tick_if_2.mcfunction
data/test/function/tick_if_2_while_1.mcfunction
data/test/function/tick_if_2_while_body_1.mcfunction
data/test/function/weapon_effects_else_1.mcfunction
data/test/function/weapon_effects_if_1.mcfunction
data/test_final_template_fixed/function/main_else_8.mcfunction
data/test_final_template_fixed/function/main_if_8.mcfunction
data/while_test/function/main_while_0.mcfunction
data/while_test/function/main_while_body_0.mcfunction
docs/.env
docs/404.html
docs/Gemfile
docs/README.md
docs/_config.yml
docs/docs.md
docs/downloads.md
docs/index.md
docs/_data/version.yml
docs/_docs/cli-reference.md
docs/_docs/contributing.md
docs/_docs/docs-hub.md
docs/_docs/documentation.md
docs/_docs/examples.md
docs/_docs/getting-started.md
docs/_docs/language-reference.md
docs/_docs/multi-file-projects.md
docs/_docs/python-api.md
docs/_docs/vscode-extension.md
docs/_includes/head-custom.html
docs/_includes/navigation.html
docs/_layouts/default.html
docs/_layouts/page.html
docs/_plugins/test_version.rb
docs/_plugins/version_reader.rb
docs/assets/css/style.css
docs/icons/favicon-16.png
docs/icons/favicon-32.png
docs/icons/favicon-48.png
docs/icons/favicon-64.png
docs/icons/icon-1024.png
docs/icons/icon-128.png
docs/icons/icon-256.png
docs/icons/icon-512.png
docs/icons/icon-64.png
examples/hello_world.mdl
icons/favicon-16.png
icons/favicon-32.png
icons/favicon-48.png
icons/favicon-64.png
icons/icon-1024.png
icons/icon-128.png
icons/icon-256.png
icons/icon-512.png
icons/icon-64.png
item_modifiers/diamond_sword.json
item_modifiers/enchant_tool.json
item_modifiers/test_item_modifier.json
loot_tables/diamond_sword.json
loot_tables/epic_loot.json
loot_tables/main_loot.json
loot_tables/test_loot.json
minecraft_datapack_language/__init__.py
minecraft_datapack_language/ast_nodes.py
minecraft_datapack_language/cli.py
minecraft_datapack_language/cli_build.py
minecraft_datapack_language/cli_check.py
minecraft_datapack_language/cli_help.py
minecraft_datapack_language/cli_new.py
minecraft_datapack_language/cli_utils.py
minecraft_datapack_language/dir_map.py
minecraft_datapack_language/expression_processor.py
minecraft_datapack_language/linter.py
minecraft_datapack_language/mdl_errors.py
minecraft_datapack_language/mdl_lexer_js.py
minecraft_datapack_language/mdl_linter.py
minecraft_datapack_language/mdl_parser_js.py
minecraft_datapack_language/pack.py
minecraft_datapack_language/utils.py
minecraft_datapack_language.egg-info/PKG-INFO
minecraft_datapack_language.egg-info/SOURCES.txt
minecraft_datapack_language.egg-info/dependency_links.txt
minecraft_datapack_language.egg-info/entry_points.txt
minecraft_datapack_language.egg-info/requires.txt
minecraft_datapack_language.egg-info/top_level.txt
my_awesome_pack/README.md
my_awesome_pack/minecraft_datapack_language.mdl
predicates/diamond_sword.json
predicates/has_mana.json
predicates/other_predicate.json
predicates/test_predicate.json
recipes/custom_pickaxe.json
recipes/diamond_sword.json
recipes/first.json
recipes/inlet.json
recipes/main_recipe.json
recipes/outlet.json
recipes/pipe.json
recipes/second.json
recipes/test_recipe.json
recipes/wrench.json
scripts/UpdateMDL.sh
scripts/bootstrap.ps1
scripts/bootstrap.sh
scripts/build_pkg.ps1
scripts/build_pkg.sh
scripts/dev_build.ps1
scripts/dev_build.sh
scripts/dev_setup.ps1
scripts/dev_setup.sh
scripts/release.sh
scripts/test_cli.ps1
scripts/test_cli.sh
scripts/test_dev.ps1
scripts/test_dev.sh
scripts/update_docs.sh
scripts/update_version_info.sh
scripts/git-bash/bootstrap-gitbash.sh
scripts/git-bash/build_pkg-gitbash.sh
scripts/git-bash/test_cli-gitbash.sh
structures/diamond_sword.json
structures/test_structure.json
structures/workshop.json
test_examples/01_basic_hello_world.mdl
test_examples/02_variables_and_scopes.mdl
test_examples/03_scoped_function_calls.mdl
test_examples/04_while_loops.mdl
test_examples/05_raw_commands.mdl
test_examples/06_comprehensive_example.mdl
test_examples/test_output_scoped_fixed.zip
test_examples/test_output_validation.py
test_examples/test_output/basic_hello.zip
test_examples/test_output/raw_commands.zip
test_examples/test_output/scoped_calls.zip
test_examples/test_output/variables.zip
test_examples/test_output/while_loops.zip
test_examples/test_output/basic_hello/pack.mcmeta
test_examples/test_output/basic_hello/data/basic_hello/function/load.mcfunction
test_examples/test_output/basic_hello/data/basic_hello/function/main.mcfunction
test_examples/test_output/basic_hello/data/minecraft/tags/function/load.json
test_examples/test_output/raw_commands/pack.mcmeta
test_examples/test_output/raw_commands/data/minecraft/tags/function/load.json
test_examples/test_output/raw_commands/data/raw_commands/function/custom_commands.mcfunction
test_examples/test_output/raw_commands/data/raw_commands/function/load.mcfunction
test_examples/test_output/raw_commands/data/raw_commands/function/main.mcfunction
test_examples/test_output/scoped_calls/pack.mcmeta
test_examples/test_output/scoped_calls/data/minecraft/tags/function/load.json
test_examples/test_output/scoped_calls/data/scoped_calls/function/increment_global.mcfunction
test_examples/test_output/scoped_calls/data/scoped_calls/function/increment_player.mcfunction
test_examples/test_output/scoped_calls/data/scoped_calls/function/load.mcfunction
test_examples/test_output/scoped_calls/data/scoped_calls/function/main.mcfunction
test_examples/test_output/scoped_calls/data/scoped_calls/function/show_scores.mcfunction
test_examples/test_output/variables/pack.mcmeta
test_examples/test_output/variables/data/minecraft/tags/function/load.json
test_examples/test_output/variables/data/variables/function/load.mcfunction
test_examples/test_output/variables/data/variables/function/main.mcfunction
test_examples/test_output/variables/data/variables/function/reset.mcfunction
test_examples/test_output/while_loops/pack.mcmeta
test_examples/test_output/while_loops/data/minecraft/tags/function/load.json
test_examples/test_output/while_loops/data/while_loops/function/countdown.mcfunction
test_examples/test_output/while_loops/data/while_loops/function/load.mcfunction
test_examples/test_output/while_loops/data/while_loops/function/main.mcfunction
test_examples/test_output/while_loops/data/while_loops/function/test_countdown_while_1.mcfunction
test_examples/test_output/while_loops/data/while_loops/function/test_main_while_2.mcfunction
test_examples/test_output/while_loops/data/while_loops/function/while_loops_countdown_while_1.mcfunction
test_examples/test_output/while_loops/data/while_loops/function/while_loops_main_while_2.mcfunction
test_examples/test_output_scoped_fixed/pack.mcmeta
test_examples/test_output_scoped_fixed/data/minecraft/tags/function/load.json
test_examples/test_output_scoped_fixed/data/scoped_calls/function/increment_global.mcfunction
test_examples/test_output_scoped_fixed/data/scoped_calls/function/increment_player.mcfunction
test_examples/test_output_scoped_fixed/data/scoped_calls/function/load.mcfunction
test_examples/test_output_scoped_fixed/data/scoped_calls/function/main.mcfunction
test_examples/test_output_scoped_fixed/data/scoped_calls/function/show_scores.mcfunction
tests/__init__.py
tests/test_basic.py
tests/test_cli_comprehensive.py
tests/test_comprehensive.py
tests/test_comprehensive_edge_cases.py
tests/test_comprehensive_features.py
tests/test_io.py
vscode-extension/README.md
vscode-extension/language-configuration.json
vscode-extension/package.json
vscode-extension/tsconfig.json
vscode-extension/icons/favicon-16.png
vscode-extension/icons/favicon-32.png
vscode-extension/icons/favicon-48.png
vscode-extension/icons/favicon-64.png
vscode-extension/icons/icon-1024.png
vscode-extension/icons/icon-128.png
vscode-extension/icons/icon-256.png
vscode-extension/icons/icon-512.png
vscode-extension/snippets/mdl.json
vscode-extension/src/extension.ts
vscode-extension/syntaxes/mdl.tmLanguage.json
vscode-extension/themes/mdl-color-theme.json