minecraft-datapack-language 15.1.94__py3-none-any.whl → 15.1.96__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.1.94'
32
- __version_tuple__ = version_tuple = (15, 1, 94)
31
+ __version__ = version = '15.1.96'
32
+ __version_tuple__ = version_tuple = (15, 1, 96)
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -262,7 +262,7 @@ def _process_say_command_with_variables(content: str, selector: str) -> str:
262
262
  if i % 2 == 0:
263
263
  # Text part
264
264
  if part: # Only add non-empty text parts
265
- components.append(f'{{"text": "{part}"}}')
265
+ components.append(f'{{"text":"{part}"}}')
266
266
  else:
267
267
  # Variable part
268
268
  var_name = part
@@ -273,13 +273,13 @@ def _process_say_command_with_variables(content: str, selector: str) -> str:
273
273
  var_parts = var_name.split('<', 1)
274
274
  base_var = var_parts[0]
275
275
  var_selector = var_parts[1][:-1] # Remove trailing >
276
- components.append(f'{{"score": {{"name": "{var_selector}", "objective": "{base_var}"}}}}')
276
+ components.append(f'{{"score":{{"name":"{var_selector}","objective":"{base_var}"}}}}')
277
277
  else:
278
278
  # Simple variable: $variable$ - use server armor stand
279
- components.append(f'{{"score": {{"name": "@e[type=armor_stand,tag=mdl_server,limit=1]", "objective": "{var_name}"}}}}')
279
+ components.append(f'{{"score":{{"name":"@e[type=armor_stand,tag=mdl_server,limit=1]","objective":"{var_name}"}}}}')
280
280
 
281
281
  # Join components and create tellraw command
282
- components_str = ', '.join(components)
282
+ components_str = ','.join(components)
283
283
  return f'tellraw @a [{components_str}]'
284
284
 
285
285
 
@@ -506,17 +506,22 @@ def _generate_function_file(ast: Dict[str, Any], output_dir: Path, namespace: st
506
506
  print(f"Function body: {func_body}")
507
507
 
508
508
 
509
- def _generate_hook_files(ast: Dict[str, Any], output_dir: Path, namespace: str, build_context: BuildContext = None) -> None:
509
+ def _generate_hook_files(ast: Dict[str, Any], output_dir: Path, namespace: str, build_context: BuildContext = None, all_namespaces: List[str] = None) -> None:
510
510
  """Generate load and tick tag files."""
511
511
  if build_context is None:
512
512
  build_context = BuildContext()
513
513
 
514
+ if all_namespaces is None:
515
+ all_namespaces = [namespace]
516
+
514
517
  # Generate load tag
515
518
  load_tag_dir = output_dir / "data" / "minecraft" / "tags" / "function"
516
519
  ensure_dir(str(load_tag_dir))
517
520
 
518
- # Start with the load function
519
- load_values = [f"{namespace}:load"]
521
+ # Start with load functions for all namespaces
522
+ load_values = []
523
+ for ns in all_namespaces:
524
+ load_values.append(f"{ns}:load")
520
525
 
521
526
  # Add functions specified in on_load hooks
522
527
  if 'hooks' in ast:
@@ -910,12 +915,13 @@ def build_mdl(input_path: str, output_path: str, verbose: bool = False, pack_for
910
915
  print(f"DEBUG: Processing namespace: {namespace}")
911
916
  _generate_function_file(ast, output_dir, namespace, verbose, build_context)
912
917
 
913
- # Generate hook files (load/tick tags) - use first namespace for global functions
918
+ # Generate hook files (load/tick tags) - include all namespaces
914
919
  primary_namespace = namespaces[0] if namespaces else 'mdl_pack'
915
- _generate_hook_files(ast, output_dir, primary_namespace, build_context)
920
+ _generate_hook_files(ast, output_dir, primary_namespace, build_context, all_namespaces=namespaces)
916
921
 
917
- # Generate global load function - use first namespace for global functions
918
- _generate_global_load_function(ast, output_dir, primary_namespace, build_context)
922
+ # Generate load functions for all namespaces
923
+ for namespace in namespaces:
924
+ _generate_global_load_function(ast, output_dir, namespace, build_context)
919
925
 
920
926
  # Create zip file (always create one, use wrapper name if specified)
921
927
  zip_name = wrapper if wrapper else output_dir.name
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: minecraft-datapack-language
3
- Version: 15.1.94
3
+ Version: 15.1.96
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=URZIwF_x9X9JlOcU7doqPW2Rzy4nTlGu5oGo7PQ-BeI,708
2
+ minecraft_datapack_language/_version.py,sha256=yen4sij9V0jNv7iafelMKRf8P7otomn6H1Mz9UuDDKc,708
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=yNp0WGPvjQa6QTjBxQiTBdrfMGDZDiIdje-AieEEVPg,41962
5
+ minecraft_datapack_language/cli_build.py,sha256=VfFkfDCDPEd2KC8L70NXXNPXEf9tMe5Lc6UWX1n6V9I,42139
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
@@ -16,9 +16,9 @@ minecraft_datapack_language/mdl_linter.py,sha256=z85xoAglENurCh30bR7kEHZ_JeMxcYa
16
16
  minecraft_datapack_language/mdl_parser_js.py,sha256=4VMWx6O7A10afTzjGnnwL_Sh52osIO84ObqHp8KoDZw,38677
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.1.94.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
20
- minecraft_datapack_language-15.1.94.dist-info/METADATA,sha256=TrF81Lw8y5IiaN2-2r5o3--NjxVeDKQrQA9dOryz1Lo,35230
21
- minecraft_datapack_language-15.1.94.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
22
- minecraft_datapack_language-15.1.94.dist-info/entry_points.txt,sha256=c6vjBeCiyQflvPHBRyBk2nJCSfYt3Oc7Sc9V87ySi_U,108
23
- minecraft_datapack_language-15.1.94.dist-info/top_level.txt,sha256=ADtFI476tbKLLxEAA-aJQAfg53MA3k_DOb0KTFiggfw,28
24
- minecraft_datapack_language-15.1.94.dist-info/RECORD,,
19
+ minecraft_datapack_language-15.1.96.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
20
+ minecraft_datapack_language-15.1.96.dist-info/METADATA,sha256=3LVe5D1jvrX07F8ZLr12lBJIiq8uOEpxEA0EO6NZhsE,35230
21
+ minecraft_datapack_language-15.1.96.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
22
+ minecraft_datapack_language-15.1.96.dist-info/entry_points.txt,sha256=c6vjBeCiyQflvPHBRyBk2nJCSfYt3Oc7Sc9V87ySi_U,108
23
+ minecraft_datapack_language-15.1.96.dist-info/top_level.txt,sha256=ADtFI476tbKLLxEAA-aJQAfg53MA3k_DOb0KTFiggfw,28
24
+ minecraft_datapack_language-15.1.96.dist-info/RECORD,,