minecraft-datapack-language 15.3.4__py3-none-any.whl → 15.3.5__py3-none-any.whl

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.
@@ -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.3.4'
32
- __version_tuple__ = version_tuple = (15, 3, 4)
31
+ __version__ = version = '15.3.5'
32
+ __version_tuple__ = version_tuple = (15, 3, 5)
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -424,6 +424,7 @@ def _process_statement(statement: Any, namespace: str, function_name: str, state
424
424
  elif statement['type'] == 'function_call':
425
425
  func_name = statement['name']
426
426
  scope = statement.get('scope')
427
+ func_namespace = statement.get('namespace', namespace) # Use specified namespace or current namespace
427
428
 
428
429
  if scope:
429
430
  # Handle scoped function call
@@ -435,10 +436,10 @@ def _process_statement(statement: Any, namespace: str, function_name: str, state
435
436
  selector = scope
436
437
 
437
438
  # Generate execute as command
438
- commands.append(f"execute as {selector} run function {namespace}:{func_name}")
439
+ commands.append(f"execute as {selector} run function {func_namespace}:{func_name}")
439
440
  else:
440
441
  # Simple function call without scope
441
- commands.append(f"function {namespace}:{func_name}")
442
+ commands.append(f"function {func_namespace}:{func_name}")
442
443
 
443
444
  elif statement['type'] == 'raw_text':
444
445
  # Raw Minecraft commands
@@ -764,6 +765,7 @@ def _ast_to_pack(ast: Dict[str, Any], mdl_files: List[Path]) -> Pack:
764
765
  elif statement.get('type') == 'function_call':
765
766
  func_name = statement['name']
766
767
  scope = statement.get('scope')
768
+ func_namespace = statement.get('namespace', namespace_name) # Use specified namespace or current namespace
767
769
 
768
770
  if scope:
769
771
  # Handle scoped function call
@@ -775,10 +777,10 @@ def _ast_to_pack(ast: Dict[str, Any], mdl_files: List[Path]) -> Pack:
775
777
  selector = scope
776
778
 
777
779
  # Generate execute as command
778
- function.commands.append(f"execute as {selector} run function {namespace_name}:{func_name}")
780
+ function.commands.append(f"execute as {selector} run function {func_namespace}:{func_name}")
779
781
  else:
780
782
  # Simple function call without scope
781
- function.commands.append(f"function {namespace_name}:{func_name}")
783
+ function.commands.append(f"function {func_namespace}:{func_name}")
782
784
  elif statement.get('type') == 'variable_assignment':
783
785
  # Handle variable assignments
784
786
  var_name = statement['name']
@@ -610,6 +610,15 @@ class MDLParser:
610
610
  suggestion="Use format: function \"namespace:function_name<@selector>\""
611
611
  )
612
612
 
613
+ # Extract function name from namespace:function_name format
614
+ if ':' in name:
615
+ namespace_parts = name.split(':', 1)
616
+ if len(namespace_parts) == 2:
617
+ namespace_name = namespace_parts[0]
618
+ function_name = namespace_parts[1]
619
+ # Store both namespace and function name
620
+ return {"type": "function_call", "name": function_name, "scope": scope, "namespace": namespace_name}
621
+
613
622
  self._match(TokenType.SEMICOLON)
614
623
 
615
624
  return {"type": "function_call", "name": name, "scope": scope}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: minecraft-datapack-language
3
- Version: 15.3.4
3
+ Version: 15.3.5
4
4
  Summary: Compile JavaScript-style MDL language or Python API 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
@@ -1,8 +1,8 @@
1
1
  minecraft_datapack_language/__init__.py,sha256=i-qCchbe5b2Fshgc6yCU9mddOLs2UBt9SAcLqfUIrT0,606
2
- minecraft_datapack_language/_version.py,sha256=VBgspE8SeVlI_5KjUnpoKLbxrMSzz1rysOdbcXXNdwg,706
2
+ minecraft_datapack_language/_version.py,sha256=NdqjbaB72vB3alACXOO2w7dz3_6tduzQNYfib3o1u74,706
3
3
  minecraft_datapack_language/ast_nodes.py,sha256=pgjI2Nlap3ixFPgWqGSkqncG9zB91h5BKgRjtcJqMew,2118
4
4
  minecraft_datapack_language/cli.py,sha256=p5A_tEEXugN2NhQFbbgfwi4FxbWYD91RWeKR_A3Vuec,6263
5
- minecraft_datapack_language/cli_build.py,sha256=curfcVYXZczDPRE-eiBPokwU10_Z-xdvnCHVcoXFfuk,43667
5
+ minecraft_datapack_language/cli_build.py,sha256=owE_cAA3HH7n3LjIIIgyDEHPPB-EyubrwR0NS9mUufY,43924
6
6
  minecraft_datapack_language/cli_check.py,sha256=bPq9gHsxQ1CIiftkrAtRCifWkVAyjp5c8Oay2NNQ1qs,6277
7
7
  minecraft_datapack_language/cli_help.py,sha256=jUTHUQBONAZKVTdQK9tNPXq4c_6xpsafNOvHDjkEldg,12243
8
8
  minecraft_datapack_language/cli_new.py,sha256=uaKH0VBC43XBt_Hztc35-BfC9bYlsDdLbAfe_42rrtI,8235
@@ -13,12 +13,12 @@ minecraft_datapack_language/linter.py,sha256=7UqbygC5JPCGg-BSOq65NB2xEJBu_OUOYII
13
13
  minecraft_datapack_language/mdl_errors.py,sha256=a_-683gjF3gfGRpDMbRgCXmXD9_aYYBmLodNH6fe29A,11596
14
14
  minecraft_datapack_language/mdl_lexer_js.py,sha256=F8I6A2CjV1sGn8a7OgG66nRKm-0jKxQpOq3fkUgkYlA,26201
15
15
  minecraft_datapack_language/mdl_linter.py,sha256=z85xoAglENurCh30bR7kEHZ_JeMxcYaLDcGNRAl-RAI,17253
16
- minecraft_datapack_language/mdl_parser_js.py,sha256=JAwjsC6hdTrZYtNelpt03vOMqphAEbTwK68ejXwJsqQ,39702
16
+ minecraft_datapack_language/mdl_parser_js.py,sha256=Ap7EDpC5wbu1qFmC8htzd8rRqSyYugt58h0AppfDD6s,40171
17
17
  minecraft_datapack_language/pack.py,sha256=nYiXQ3jgJlDfc4m-65f7C2LFhDRioaUU_XVy6Na4SJI,34625
18
18
  minecraft_datapack_language/utils.py,sha256=Aq0HAGlXqj9BUTEjaEilpvzEW0EtZYYMMwOqG9db6dE,684
19
- minecraft_datapack_language-15.3.4.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
20
- minecraft_datapack_language-15.3.4.dist-info/METADATA,sha256=W90GO33CEecqTWLBbxpxeNHcDb_n2K34zv5pagEDLAw,35229
21
- minecraft_datapack_language-15.3.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
22
- minecraft_datapack_language-15.3.4.dist-info/entry_points.txt,sha256=c6vjBeCiyQflvPHBRyBk2nJCSfYt3Oc7Sc9V87ySi_U,108
23
- minecraft_datapack_language-15.3.4.dist-info/top_level.txt,sha256=ADtFI476tbKLLxEAA-aJQAfg53MA3k_DOb0KTFiggfw,28
24
- minecraft_datapack_language-15.3.4.dist-info/RECORD,,
19
+ minecraft_datapack_language-15.3.5.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
20
+ minecraft_datapack_language-15.3.5.dist-info/METADATA,sha256=TM4dfgr2yrEgiZ9Utqsl9JLpqcqMvtbE8PrgWbKjjbY,35229
21
+ minecraft_datapack_language-15.3.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
22
+ minecraft_datapack_language-15.3.5.dist-info/entry_points.txt,sha256=c6vjBeCiyQflvPHBRyBk2nJCSfYt3Oc7Sc9V87ySi_U,108
23
+ minecraft_datapack_language-15.3.5.dist-info/top_level.txt,sha256=ADtFI476tbKLLxEAA-aJQAfg53MA3k_DOb0KTFiggfw,28
24
+ minecraft_datapack_language-15.3.5.dist-info/RECORD,,