stewbeet 2.0.10__tar.gz → 2.0.11__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.

Potentially problematic release.


This version of stewbeet might be problematic. Click here for more details.

Files changed (136) hide show
  1. {stewbeet-2.0.10 → stewbeet-2.0.11}/PKG-INFO +1 -1
  2. {stewbeet-2.0.10 → stewbeet-2.0.11}/pyproject.toml +1 -1
  3. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/continuous_delivery/pmc.py +1 -1
  4. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/auto/headers/object.py +63 -7
  5. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/datapack/loot_tables/__init__.py +10 -0
  6. {stewbeet-2.0.10 → stewbeet-2.0.11}/.gitignore +0 -0
  7. {stewbeet-2.0.10 → stewbeet-2.0.11}/LICENSE +0 -0
  8. {stewbeet-2.0.10 → stewbeet-2.0.11}/README.md +0 -0
  9. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/__init__.py +0 -0
  10. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/__main__.py +0 -0
  11. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/continuous_delivery/__init__.py +0 -0
  12. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/continuous_delivery/cd_utils.py +0 -0
  13. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/continuous_delivery/github.py +0 -0
  14. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/continuous_delivery/modrinth.py +0 -0
  15. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/continuous_delivery/smithed.py +0 -0
  16. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/__init__.py +0 -0
  17. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/__memory__.py +0 -0
  18. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/constants.py +0 -0
  19. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/definitions_helper/__init__.py +0 -0
  20. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/definitions_helper/completion.py +0 -0
  21. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/definitions_helper/equipments.py +0 -0
  22. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/definitions_helper/materials.py +0 -0
  23. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/definitions_helper/records.py +0 -0
  24. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/definitions_helper/smart_ore_generation.py +0 -0
  25. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/definitions_helper/text.py +0 -0
  26. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/ingredients.py +0 -0
  27. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/utils/io.py +0 -0
  28. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/core/utils/sounds.py +0 -0
  29. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/__init__.py +0 -0
  30. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/bookshelf.py +0 -0
  31. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/bookshelf_config.json +0 -0
  32. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Bitwise.zip +0 -0
  33. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Block.zip +0 -0
  34. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Color.zip +0 -0
  35. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Dump.zip +0 -0
  36. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Environment.zip +0 -0
  37. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Generation.zip +0 -0
  38. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Health.zip +0 -0
  39. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Hitbox.zip +0 -0
  40. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Id.zip +0 -0
  41. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Interaction.zip +0 -0
  42. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Link.zip +0 -0
  43. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Log.zip +0 -0
  44. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Math.zip +0 -0
  45. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Move.zip +0 -0
  46. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Position.zip +0 -0
  47. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Random.zip +0 -0
  48. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Raycast.zip +0 -0
  49. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Schedule.zip +0 -0
  50. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Sidebar.zip +0 -0
  51. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Spline.zip +0 -0
  52. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf String.zip +0 -0
  53. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Time.zip +0 -0
  54. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Tree.zip +0 -0
  55. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Vector.zip +0 -0
  56. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf View.zip +0 -0
  57. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Bookshelf Xp.zip +0 -0
  58. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Common Signals.zip +0 -0
  59. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Furnace NBT Recipes.zip +0 -0
  60. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/ItemIO.zip +0 -0
  61. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/SmartOreGeneration.zip +0 -0
  62. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Smithed Crafter.zip +0 -0
  63. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/datapack/Smithed Custom Block.zip +0 -0
  64. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/dependencies/resource_pack/Smithed Crafter.zip +0 -0
  65. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/archive/__init__.py +0 -0
  66. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/auto/headers/__init__.py +0 -0
  67. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/auto/lang_file/__init__.py +0 -0
  68. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/auto/lang_file/utils.py +0 -0
  69. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/compatibilities/neo_enchant/__init__.py +0 -0
  70. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/compatibilities/simpledrawer/__init__.py +0 -0
  71. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/compute_sha1/__init__.py +0 -0
  72. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/copy_to_destination/__init__.py +0 -0
  73. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/custom_recipes/__init__.py +0 -0
  74. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/custom_recipes/furnace.py +0 -0
  75. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/custom_recipes/pulverizer.py +0 -0
  76. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/custom_recipes/smithed.py +0 -0
  77. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/custom_recipes/vanilla.py +0 -0
  78. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/datapack/custom_blocks/__init__.py +0 -0
  79. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/datapack/loading/__init__.py +0 -0
  80. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/finalyze/basic_datapack_structure/__init__.py +0 -0
  81. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/finalyze/check_unused_textures/__init__.py +0 -0
  82. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/finalyze/custom_blocks_ticking/__init__.py +0 -0
  83. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/finalyze/dependencies/__init__.py +0 -0
  84. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/__init__.py +0 -0
  85. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/furnace.png +0 -0
  86. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/heavy_workbench.png +0 -0
  87. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/invisible_item.png +0 -0
  88. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/invisible_item_release.png +0 -0
  89. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/minecraft_font.ttf +0 -0
  90. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/none.png +0 -0
  91. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/none_release.png +0 -0
  92. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/pulverizing.png +0 -0
  93. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/shaped_2x2.png +0 -0
  94. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/shaped_3x3.png +0 -0
  95. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/simple_case_no_border.png +0 -0
  96. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/wiki_information.png +0 -0
  97. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/wiki_ingredient_of_craft.png +0 -0
  98. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/wiki_ingredient_of_craft_template.png +0 -0
  99. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/assets/wiki_result_of_craft.png +0 -0
  100. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/book_components.py +0 -0
  101. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/book_optimizer.py +0 -0
  102. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/craft_content.py +0 -0
  103. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/image_utils.py +0 -0
  104. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/iso_renders.py +0 -0
  105. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/main.py +0 -0
  106. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/other_utils.py +0 -0
  107. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/page_font.py +0 -0
  108. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/shared_import.py +0 -0
  109. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/.gitignore +0 -0
  110. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/_README.md +0 -0
  111. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/furnace.png +0 -0
  112. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/heavy_workbench.png +0 -0
  113. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/invisible_item.png +0 -0
  114. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/invisible_item_release.png +0 -0
  115. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/minecraft_font.ttf +0 -0
  116. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/none.png +0 -0
  117. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/none_release.png +0 -0
  118. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/pulverizing.png +0 -0
  119. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/shaped_2x2.png +0 -0
  120. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/shaped_3x3.png +0 -0
  121. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/simple_case_no_border.png +0 -0
  122. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/wiki_information.png +0 -0
  123. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/wiki_ingredient_of_craft.png +0 -0
  124. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/wiki_ingredient_of_craft_template.png +0 -0
  125. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/templates/wiki_result_of_craft.png +0 -0
  126. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/ingame_manual/text_components.py +0 -0
  127. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/initialize/__init__.py +0 -0
  128. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/initialize/source_lore_font.py +0 -0
  129. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/merge_smithed_weld/__init__.py +0 -0
  130. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/merge_smithed_weld/weld.py +0 -0
  131. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/resource_pack/check_power_of_2/__init__.py +0 -0
  132. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/resource_pack/item_models/__init__.py +0 -0
  133. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/resource_pack/item_models/object.py +0 -0
  134. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/resource_pack/sounds/__init__.py +0 -0
  135. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/plugins/verify_definitions/__init__.py +0 -0
  136. {stewbeet-2.0.10 → stewbeet-2.0.11}/stewbeet/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: stewbeet
3
- Version: 2.0.10
3
+ Version: 2.0.11
4
4
  Summary: Beet Framework made to help generating advanced Minecraft datapack contents
5
5
  Project-URL: Homepage, https://github.com/Stoupy51/stewbeet
6
6
  Project-URL: Issues, https://github.com/Stoupy51/stewbeet/issues
@@ -5,7 +5,7 @@ build-backend = "hatchling.build"
5
5
 
6
6
  [project]
7
7
  name = "stewbeet"
8
- version = "2.0.10"
8
+ version = "2.0.11"
9
9
  description = "Beet Framework made to help generating advanced Minecraft datapack contents"
10
10
  readme = "README.md"
11
11
  license = "MIT"
@@ -53,7 +53,7 @@ def convert_markdown_to_bbcode(markdown: str, verbose: bool = True) -> str:
53
53
  ...
54
54
  ... **Full Changelog**: https://github.com/Stoupy51/LifeSteal/compare/v1.2.2...v1.2.3
55
55
  ... '''
56
- >>> bbcode = convert_markdown_to_bbcode(markdown_text, verbose=True)
56
+ >>> bbcode = convert_markdown_to_bbcode(markdown_text, verbose=False)
57
57
  >>> print(bbcode.strip())
58
58
  [h2]Changelog[/h2][h4]Build System[/h4][list]
59
59
  [*]🚀 Bump version to v1.2.3 ([url=https://github.com/Stoupy51/LifeSteal/commit/2111fd2f390b80a3aab77a4e7bcbb24b93845e5a]2111fd2[/url])[/*]
@@ -58,6 +58,33 @@ class Header:
58
58
  ['Some info']
59
59
  >>> header.content
60
60
  'say Hello'
61
+
62
+ >>> alt_launch_content = '''
63
+ ... #> alt_launch
64
+ ... #
65
+ ... # @executed as the player & at current position
66
+ ... #
67
+ ... # @input macro target : string - target selector for position and rotation source
68
+ ... # @input macro time : int - time in ticks
69
+ ... # @input macro with : compound - additional arguments (optional)
70
+ ... # - yaw : float - yaw rotation (will override target rotation)
71
+ ... # - pitch : float - pitch rotation (will override target rotation)
72
+ ... # - go_side : float - how far to go side (0 = don't go side)
73
+ ... # - add_y : float - additional y position (default: 20.0)
74
+ ... # - particle : int - particle effect (0 = none, 1 = glow)
75
+ ... # - interpolation : int - teleport duration (default: 1)
76
+ ... # - delay : int - delay in ticks before starting (default: 0)
77
+ ... #
78
+ ... # @description Launch a cinematic that moves the player to the position and rotation of a target entity
79
+ ... #
80
+ ... # @example /execute as @s positioned 0 69 0 rotated -55 10 run function switch:cinematic/alt_launch
81
+ ... # {target:"@s",time:60,with:{go_side:1,add_y:20.0,particle:1,interpolation:1,delay:20}}
82
+ ... #
83
+ ...
84
+ ... function content here'''
85
+ >>> alt_header = Header.from_content("alt_launch", alt_launch_content)
86
+ >>> len(alt_header.other) > 10 # Should capture all the @executed, @input, @description, @example lines
87
+ True
61
88
  """
62
89
  # Initialize empty lists
63
90
  within: list[str] = []
@@ -81,25 +108,27 @@ class Header:
81
108
  within.append(func_name)
82
109
  i += 1
83
110
 
84
- # Skip empty lines
111
+ # Skip empty comment lines
85
112
  while i < len(lines) and lines[i].strip() == "#":
86
113
  i += 1
87
114
 
88
- # Parse other information
89
- while i < len(lines) and lines[i].strip().startswith("# "):
115
+ # Parse other information (without # prefix)
116
+ while i < len(lines) and lines[i].strip().startswith("#"):
90
117
  other_line: str = lines[i].strip()
91
- if other_line != "#":
92
- # Remove the # prefix and add to other
93
- other.append(other_line[2:].strip())
118
+ other.append(other_line[2:])
94
119
  i += 1
95
120
 
96
- # Skip empty lines
121
+ # Skip any remaining empty comment lines
97
122
  while i < len(lines) and lines[i].strip() == "#":
98
123
  i += 1
99
124
 
100
125
  # The remaining lines are the actual content
101
126
  actual_content = "\n".join(lines[i:]).strip()
102
127
 
128
+ if other and other[-1] == "":
129
+ # Remove the last empty line if it exists
130
+ other.pop()
131
+
103
132
  return cls(path, within, other, actual_content)
104
133
 
105
134
  def to_str(self) -> str:
@@ -148,3 +177,30 @@ class Header:
148
177
  header += "#\n"
149
178
  return (header + "\n" + self.content.strip() + "\n\n").replace("\n\n\n", "\n\n")
150
179
 
180
+ if __name__ == "__main__":
181
+ # Example usage
182
+ example_content = """
183
+ #> alt_launch
184
+ #
185
+ # @executed as the player & at current position
186
+ #
187
+ # @input macro target : string - target selector for position and rotation source
188
+ # @input macro time : int - time in ticks
189
+ # @input macro with : compound - additional arguments (optional)
190
+ # - yaw : float - yaw rotation (will override target rotation)
191
+ # - pitch : float - pitch rotation (will override target rotation)
192
+ # - go_side : float - how far to go side (0 = don't go side)
193
+ # - add_y : float - additional y position (default: 20.0)
194
+ # - particle : int - particle effect (0 = none, 1 = glow)
195
+ # - interpolation : int - teleport duration (default: 1)
196
+ # - delay : int - delay in ticks before starting (default: 0)
197
+ #
198
+ # @description Launch a cinematic that moves the player to the position and rotation of a target entity
199
+ #
200
+ # @example /execute as @s positioned 0 69 0 rotated -55 10 run function switch:cinematic/alt_launch {target:"@s",time:60,with:{go_side:1,add_y:20.0,particle:1,interpolation:1,delay:20}}
201
+ #
202
+
203
+ # Fonction content here
204
+ """
205
+ header = Header.from_content("alt_launch", example_content)
206
+ print(header.to_str())
@@ -28,6 +28,9 @@ def beet_default(ctx: Context):
28
28
  assert ctx.project_id, "Project ID is not set. Please set it in the project configuration."
29
29
  ns: str = ctx.project_id
30
30
 
31
+ # Creative loot table (sort of give all loot table)
32
+ creative_loot_table: JsonDict = {"pools": []}
33
+
31
34
  # For each item in the definitions, create a loot table
32
35
  for item, data in Mem.definitions.items():
33
36
  loot_table: JsonDict = {
@@ -55,6 +58,9 @@ def beet_default(ctx: Context):
55
58
  # Create loot table with beet
56
59
  ctx.data[ns].loot_tables[f"i/{item}"] = LootTable(super_json_dump(loot_table, max_level = 10))
57
60
 
61
+ # Add the pool to the creative loot table
62
+ creative_loot_table["pools"].append({"rolls": 1, "entries":[{"type":"minecraft:loot_table","value":f"{ns}:i/{item}"}] })
63
+
58
64
  # Same for external items
59
65
  for item, data in Mem.external_definitions.items():
60
66
  ext_ns, item_name = item.split(":")
@@ -119,6 +125,10 @@ def beet_default(ctx: Context):
119
125
  }
120
126
  ctx.data[ns].loot_tables[f"i/{ns}_manual"] = LootTable(super_json_dump(loot_table, max_level=10))
121
127
 
128
+ # Write the creative loot table
129
+ if creative_loot_table["pools"]:
130
+ ctx.data[ns].loot_tables["creative_loot_table"] = LootTable(super_json_dump(creative_loot_table, max_level=2))
131
+
122
132
  # Make a give all command that gives chests with all the items
123
133
  CHEST_SIZE: int = 27
124
134
  total_chests: int = (len(Mem.definitions) + CHEST_SIZE - 1) // CHEST_SIZE
File without changes
File without changes
File without changes
File without changes