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.
- minecraft_datapack_language/_version.py +2 -2
- minecraft_datapack_language/cli_build.py +17 -11
- {minecraft_datapack_language-15.1.94.dist-info → minecraft_datapack_language-15.1.96.dist-info}/METADATA +1 -1
- {minecraft_datapack_language-15.1.94.dist-info → minecraft_datapack_language-15.1.96.dist-info}/RECORD +8 -8
- {minecraft_datapack_language-15.1.94.dist-info → minecraft_datapack_language-15.1.96.dist-info}/WHEEL +0 -0
- {minecraft_datapack_language-15.1.94.dist-info → minecraft_datapack_language-15.1.96.dist-info}/entry_points.txt +0 -0
- {minecraft_datapack_language-15.1.94.dist-info → minecraft_datapack_language-15.1.96.dist-info}/licenses/LICENSE +0 -0
- {minecraft_datapack_language-15.1.94.dist-info → minecraft_datapack_language-15.1.96.dist-info}/top_level.txt +0 -0
@@ -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.
|
32
|
-
__version_tuple__ = version_tuple = (15, 1,
|
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":
|
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":
|
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":
|
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 = ',
|
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
|
519
|
-
load_values = [
|
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) -
|
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
|
918
|
-
|
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.
|
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=
|
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=
|
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.
|
20
|
-
minecraft_datapack_language-15.1.
|
21
|
-
minecraft_datapack_language-15.1.
|
22
|
-
minecraft_datapack_language-15.1.
|
23
|
-
minecraft_datapack_language-15.1.
|
24
|
-
minecraft_datapack_language-15.1.
|
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,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|