sandstone 1.0.0 → 1.1.0

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.
Files changed (295) hide show
  1. package/README.md +1 -1
  2. package/dist/_internal/index.d.ts +91 -16
  3. package/dist/_internal/index.js +1961 -306
  4. package/dist/_internal/index.js.map +1 -1
  5. package/dist/_internal/types/arguments/generated/_builtin/block_state_keys.d.ts +85 -1
  6. package/dist/_internal/types/arguments/generated/_builtin/block_states.d.ts +181 -1
  7. package/dist/_internal/types/arguments/generated/_dispatcher/block.d.ts +57 -21
  8. package/dist/_internal/types/arguments/generated/_dispatcher/block_entity.d.ts +5 -1
  9. package/dist/_internal/types/arguments/generated/_dispatcher/data_component_existence_predicate.d.ts +19 -0
  10. package/dist/_internal/types/arguments/generated/_dispatcher/resource.d.ts +24 -1
  11. package/dist/_internal/types/arguments/generated/_registry/advancements.d.ts +1 -1
  12. package/dist/_internal/types/arguments/generated/_registry/atlases.d.ts +1 -1
  13. package/dist/_internal/types/arguments/generated/_registry/attributes.d.ts +1 -1
  14. package/dist/_internal/types/arguments/generated/_registry/block_definitions.d.ts +1 -1
  15. package/dist/_internal/types/arguments/generated/_registry/block_entity_types.d.ts +1 -1
  16. package/dist/_internal/types/arguments/generated/_registry/block_predicate_types.d.ts +1 -1
  17. package/dist/_internal/types/arguments/generated/_registry/block_types.d.ts +1 -1
  18. package/dist/_internal/types/arguments/generated/_registry/blocks.d.ts +1 -1
  19. package/dist/_internal/types/arguments/generated/_registry/cat_sound_variants.d.ts +4 -0
  20. package/dist/_internal/types/arguments/generated/_registry/chicken_sound_variants.d.ts +4 -0
  21. package/dist/_internal/types/arguments/generated/_registry/chunk_statuses.d.ts +1 -1
  22. package/dist/_internal/types/arguments/generated/_registry/command_argument_types.d.ts +1 -1
  23. package/dist/_internal/types/arguments/generated/_registry/cow_sound_variants.d.ts +4 -0
  24. package/dist/_internal/types/arguments/generated/_registry/damage_types.d.ts +1 -1
  25. package/dist/_internal/types/arguments/generated/_registry/data_component_types.d.ts +1 -1
  26. package/dist/_internal/types/arguments/generated/_registry/entity_sub_predicate_types.d.ts +1 -1
  27. package/dist/_internal/types/arguments/generated/_registry/entity_types.d.ts +1 -1
  28. package/dist/_internal/types/arguments/generated/_registry/game_events.d.ts +1 -1
  29. package/dist/_internal/types/arguments/generated/_registry/game_rules.d.ts +1 -1
  30. package/dist/_internal/types/arguments/generated/_registry/item_definitions.d.ts +1 -1
  31. package/dist/_internal/types/arguments/generated/_registry/items.d.ts +1 -1
  32. package/dist/_internal/types/arguments/generated/_registry/jukebox_songs.d.ts +1 -1
  33. package/dist/_internal/types/arguments/generated/_registry/langs.d.ts +1 -1
  34. package/dist/_internal/types/arguments/generated/_registry/loot_pool_entry_types.d.ts +1 -1
  35. package/dist/_internal/types/arguments/generated/_registry/loot_tables.d.ts +1 -1
  36. package/dist/_internal/types/arguments/generated/_registry/models.d.ts +1 -1
  37. package/dist/_internal/types/arguments/generated/_registry/particle_types.d.ts +1 -1
  38. package/dist/_internal/types/arguments/generated/_registry/pig_sound_variants.d.ts +4 -0
  39. package/dist/_internal/types/arguments/generated/_registry/recipes.d.ts +1 -1
  40. package/dist/_internal/types/arguments/generated/_registry/sound_events.d.ts +1 -1
  41. package/dist/_internal/types/arguments/generated/_registry/sounds.d.ts +1 -1
  42. package/dist/_internal/types/arguments/generated/_registry/structures.d.ts +1 -1
  43. package/dist/_internal/types/arguments/generated/_registry/sulfur_cube_archetypes.d.ts +4 -0
  44. package/dist/_internal/types/arguments/generated/_registry/tag_blocks.d.ts +1 -1
  45. package/dist/_internal/types/arguments/generated/_registry/tag_damage_types.d.ts +1 -1
  46. package/dist/_internal/types/arguments/generated/_registry/tag_entity_types.d.ts +1 -1
  47. package/dist/_internal/types/arguments/generated/_registry/tag_items.d.ts +1 -1
  48. package/dist/_internal/types/arguments/generated/_registry/test_environment_definition_types.d.ts +1 -1
  49. package/dist/_internal/types/arguments/generated/_registry/textures.d.ts +1 -1
  50. package/dist/_internal/types/arguments/generated/_registry/translation_keys.d.ts +1 -1
  51. package/dist/_internal/types/arguments/generated/_registry/trigger_types.d.ts +1 -1
  52. package/dist/_internal/types/arguments/generated/_registry/trim_patterns.d.ts +1 -1
  53. package/dist/_internal/types/arguments/generated/_registry/villager_trades.d.ts +1 -1
  54. package/dist/_internal/types/arguments/generated/_registry/wolf_sound_variants.d.ts +1 -1
  55. package/dist/_internal/types/arguments/generated/_registry/wolf_variants.d.ts +1 -1
  56. package/dist/_internal/types/arguments/generated/_registry/worldgen_biomes.d.ts +1 -1
  57. package/dist/_internal/types/arguments/generated/_registry/worldgen_configured_carvers.d.ts +1 -1
  58. package/dist/_internal/types/arguments/generated/_registry/worldgen_configured_features.d.ts +1 -1
  59. package/dist/_internal/types/arguments/generated/_registry/worldgen_density_function_types.d.ts +1 -1
  60. package/dist/_internal/types/arguments/generated/_registry/worldgen_features.d.ts +1 -1
  61. package/dist/_internal/types/arguments/generated/_registry/worldgen_noises.d.ts +1 -1
  62. package/dist/_internal/types/arguments/generated/_registry/worldgen_placed_features.d.ts +1 -1
  63. package/dist/_internal/types/arguments/generated/_registry/worldgen_world_presets.d.ts +1 -1
  64. package/dist/_internal/types/arguments/generated/assets/atlas.d.ts +11 -2
  65. package/dist/_internal/types/arguments/generated/assets/block_state_definition.d.ts +25 -0
  66. package/dist/_internal/types/arguments/generated/assets/credits.d.ts +53 -0
  67. package/dist/_internal/types/arguments/generated/assets/equipment.d.ts +4 -5
  68. package/dist/_internal/types/arguments/generated/assets/item_definition.d.ts +29 -31
  69. package/dist/_internal/types/arguments/generated/assets/model.d.ts +126 -0
  70. package/dist/_internal/types/arguments/generated/assets/shader/program.d.ts +3 -0
  71. package/dist/_internal/types/arguments/generated/assets/sounds.d.ts +1 -1
  72. package/dist/_internal/types/arguments/generated/assets/texture_meta.d.ts +168 -28
  73. package/dist/_internal/types/arguments/generated/data/advancement/predicate.d.ts +170 -56
  74. package/dist/_internal/types/arguments/generated/data/advancement/trigger.d.ts +18 -0
  75. package/dist/_internal/types/arguments/generated/data/advancement.d.ts +7 -4
  76. package/dist/_internal/types/arguments/generated/data/chat_type.d.ts +7 -2
  77. package/dist/_internal/types/arguments/generated/data/decorated_pot_pattern.d.ts +8 -0
  78. package/dist/_internal/types/arguments/generated/data/dialog/input.d.ts +21 -0
  79. package/dist/_internal/types/arguments/generated/data/dialog.d.ts +5 -5
  80. package/dist/_internal/types/arguments/generated/data/enchantment/effect_component.d.ts +25 -25
  81. package/dist/_internal/types/arguments/generated/data/gametest/test_environment.d.ts +19 -1
  82. package/dist/_internal/types/arguments/generated/data/gametest.d.ts +1 -1
  83. package/dist/_internal/types/arguments/generated/data/item_modifier.d.ts +2 -1
  84. package/dist/_internal/types/arguments/generated/data/loot/condition.d.ts +84 -86
  85. package/dist/_internal/types/arguments/generated/data/loot/function.d.ts +261 -232
  86. package/dist/_internal/types/arguments/generated/data/loot.d.ts +10 -13
  87. package/dist/_internal/types/arguments/generated/data/predicate.d.ts +2 -1
  88. package/dist/_internal/types/arguments/generated/data/recipe.d.ts +58 -1
  89. package/dist/_internal/types/arguments/generated/data/slot_source.d.ts +91 -0
  90. package/dist/_internal/types/arguments/generated/data/structure.d.ts +59 -0
  91. package/dist/_internal/types/arguments/generated/data/sulfur_cube_archetype.d.ts +84 -0
  92. package/dist/_internal/types/arguments/generated/data/trim.d.ts +7 -1
  93. package/dist/_internal/types/arguments/generated/data/util.d.ts +7 -0
  94. package/dist/_internal/types/arguments/generated/data/variants/painting.d.ts +2 -2
  95. package/dist/_internal/types/arguments/generated/data/villager_trade.d.ts +4 -4
  96. package/dist/_internal/types/arguments/generated/data/worldgen/biome.d.ts +18 -0
  97. package/dist/_internal/types/arguments/generated/data/worldgen/carver.d.ts +24 -0
  98. package/dist/_internal/types/arguments/generated/data/worldgen/density_function.d.ts +28 -2
  99. package/dist/_internal/types/arguments/generated/data/worldgen/dimension/biome_source.d.ts +4 -0
  100. package/dist/_internal/types/arguments/generated/data/worldgen/dimension.d.ts +2 -2
  101. package/dist/_internal/types/arguments/generated/data/worldgen/feature/block_predicate.d.ts +7 -1
  102. package/dist/_internal/types/arguments/generated/data/worldgen/feature/tree.d.ts +54 -6
  103. package/dist/_internal/types/arguments/generated/data/worldgen/feature.d.ts +285 -115
  104. package/dist/_internal/types/arguments/generated/data/worldgen/material_condition.d.ts +93 -0
  105. package/dist/_internal/types/arguments/generated/data/worldgen/material_rule.d.ts +35 -0
  106. package/dist/_internal/types/arguments/generated/data/worldgen/noise_settings.d.ts +6 -2
  107. package/dist/_internal/types/arguments/generated/data/worldgen/processor_list.d.ts +18 -2
  108. package/dist/_internal/types/arguments/generated/data/worldgen/structure.d.ts +72 -2
  109. package/dist/_internal/types/arguments/generated/data/worldgen/structure_set.d.ts +4 -4
  110. package/dist/_internal/types/arguments/generated/dispatcher.d.ts +5 -3
  111. package/dist/_internal/types/arguments/generated/pack.d.ts +7 -0
  112. package/dist/_internal/types/arguments/generated/registry-sets.d.ts +9 -4
  113. package/dist/_internal/types/arguments/generated/registry.d.ts +15 -5
  114. package/dist/_internal/types/arguments/generated/resource-paths.d.ts +15 -0
  115. package/dist/_internal/types/arguments/generated/resources.d.ts +13 -1
  116. package/dist/_internal/types/arguments/generated/util/effect.d.ts +105 -3
  117. package/dist/_internal/types/arguments/generated/util/particle.d.ts +72 -1
  118. package/dist/_internal/types/arguments/generated/util/slot.d.ts +1 -84
  119. package/dist/_internal/types/arguments/generated/util/text.d.ts +191 -1
  120. package/dist/_internal/types/arguments/generated/util.d.ts +1 -0
  121. package/dist/_internal/types/arguments/generated/world/block/decorated_pot.d.ts +3 -5
  122. package/dist/_internal/types/arguments/generated/world/block/furnace.d.ts +3 -0
  123. package/dist/_internal/types/arguments/generated/world/block/potent_sulfur.d.ts +10 -0
  124. package/dist/_internal/types/arguments/generated/world/block/test_instance_block.d.ts +46 -1
  125. package/dist/_internal/types/arguments/generated/world/block/vault.d.ts +59 -0
  126. package/dist/_internal/types/arguments/generated/world/component/block.d.ts +6 -0
  127. package/dist/_internal/types/arguments/generated/world/component/item.d.ts +21 -6
  128. package/dist/_internal/types/arguments/generated/world/component/predicate.d.ts +4 -1
  129. package/dist/_internal/types/arguments/generated/world/component.d.ts +2 -1
  130. package/dist/_internal/types/arguments/generated/world/entity/boat.d.ts +15 -2
  131. package/dist/_internal/types/arguments/generated/world/entity/display.d.ts +34 -0
  132. package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/chicken.d.ts +1 -1
  133. package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/cow.d.ts +1 -1
  134. package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/saddled.d.ts +1 -1
  135. package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/tamable.d.ts +1 -1
  136. package/dist/_internal/types/arguments/generated/world/entity/mob/copper_golem.d.ts +3 -3
  137. package/dist/_internal/types/arguments/generated/world/entity/mob/happy_ghast.d.ts +5 -0
  138. package/dist/_internal/types/arguments/generated/world/entity/mob/player.d.ts +21 -0
  139. package/dist/_internal/types/arguments/generated/world/entity/mob/shulker.d.ts +2 -2
  140. package/dist/_internal/types/arguments/generated/world/entity/mob/slime.d.ts +20 -2
  141. package/dist/_internal/types/arguments/generated/world/entity/mob.d.ts +50 -7
  142. package/dist/_internal/types/arguments/generated/world/item/map.d.ts +12 -0
  143. package/dist/_internal/types/arguments/generated/world/item/shield.d.ts +26 -0
  144. package/dist/_internal/types/core/resources/datapack/decoratedPotPattern.d.ts +24 -0
  145. package/dist/_internal/types/core/resources/datapack/index.d.ts +3 -0
  146. package/dist/_internal/types/core/resources/datapack/slotSource.d.ts +24 -0
  147. package/dist/_internal/types/core/resources/datapack/sulfurCubeArchetype.d.ts +24 -0
  148. package/dist/_internal/types/pack/pack.d.ts +5 -2
  149. package/dist/_internal/types/variables/ResolveNBT.d.ts +1 -1
  150. package/dist/browser/sandstone.esm.js +1961 -306
  151. package/dist/browser/sandstone.esm.js.map +1 -1
  152. package/dist/exports/arguments/index.d.ts +1 -1
  153. package/dist/exports/arguments/index.js +1 -1
  154. package/dist/exports/core/index.d.ts +1 -1
  155. package/dist/exports/core/index.js +1 -1
  156. package/dist/exports/index.d.ts +1 -1
  157. package/dist/exports/index.js +1 -1
  158. package/package.json +2 -2
  159. package/src/arguments/generated/_builtin/block_state_keys.ts +112 -0
  160. package/src/arguments/generated/_builtin/block_states.ts +208 -0
  161. package/src/arguments/generated/_dispatcher/block.ts +68 -20
  162. package/src/arguments/generated/_dispatcher/block_entity.ts +5 -0
  163. package/src/arguments/generated/_dispatcher/data_component_existence_predicate.ts +34 -0
  164. package/src/arguments/generated/_dispatcher/resource.ts +29 -0
  165. package/src/arguments/generated/_registry/advancements.ts +71 -0
  166. package/src/arguments/generated/_registry/atlases.ts +0 -2
  167. package/src/arguments/generated/_registry/attributes.ts +5 -0
  168. package/src/arguments/generated/_registry/block_definitions.ts +28 -0
  169. package/src/arguments/generated/_registry/block_entity_types.ts +1 -1
  170. package/src/arguments/generated/_registry/block_predicate_types.ts +1 -0
  171. package/src/arguments/generated/_registry/block_types.ts +3 -1
  172. package/src/arguments/generated/_registry/blocks.ts +28 -0
  173. package/src/arguments/generated/_registry/cat_sound_variants.ts +11 -0
  174. package/src/arguments/generated/_registry/chicken_sound_variants.ts +11 -0
  175. package/src/arguments/generated/_registry/command_argument_types.ts +1 -1
  176. package/src/arguments/generated/_registry/cow_sound_variants.ts +11 -0
  177. package/src/arguments/generated/_registry/damage_types.ts +1 -0
  178. package/src/arguments/generated/_registry/data_component_types.ts +1 -0
  179. package/src/arguments/generated/_registry/entity_sub_predicate_types.ts +25 -6
  180. package/src/arguments/generated/_registry/entity_types.ts +1 -0
  181. package/src/arguments/generated/_registry/game_events.ts +1 -0
  182. package/src/arguments/generated/_registry/item_definitions.ts +31 -0
  183. package/src/arguments/generated/_registry/items.ts +31 -0
  184. package/src/arguments/generated/_registry/jukebox_songs.ts +1 -0
  185. package/src/arguments/generated/_registry/langs.ts +5 -0
  186. package/src/arguments/generated/_registry/loot_tables.ts +29 -0
  187. package/src/arguments/generated/_registry/models.ts +294 -42
  188. package/src/arguments/generated/_registry/particle_types.ts +8 -0
  189. package/src/arguments/generated/_registry/pig_sound_variants.ts +12 -0
  190. package/src/arguments/generated/_registry/recipes.ts +70 -0
  191. package/src/arguments/generated/_registry/sound_events.ts +66 -0
  192. package/src/arguments/generated/_registry/sounds.ts +307 -0
  193. package/src/arguments/generated/_registry/structures.ts +10 -0
  194. package/src/arguments/generated/_registry/sulfur_cube_archetypes.ts +21 -0
  195. package/src/arguments/generated/_registry/tag_blocks.ts +18 -1
  196. package/src/arguments/generated/_registry/tag_damage_types.ts +1 -0
  197. package/src/arguments/generated/_registry/tag_entity_types.ts +1 -0
  198. package/src/arguments/generated/_registry/tag_items.ts +17 -0
  199. package/src/arguments/generated/_registry/test_environment_definition_types.ts +1 -0
  200. package/src/arguments/generated/_registry/textures.ts +233 -42
  201. package/src/arguments/generated/_registry/translation_keys.ts +316 -72
  202. package/src/arguments/generated/_registry/villager_trades.ts +1 -0
  203. package/src/arguments/generated/_registry/worldgen_biomes.ts +1 -0
  204. package/src/arguments/generated/_registry/worldgen_configured_features.ts +5 -0
  205. package/src/arguments/generated/_registry/worldgen_density_function_types.ts +1 -1
  206. package/src/arguments/generated/_registry/worldgen_features.ts +5 -2
  207. package/src/arguments/generated/_registry/worldgen_noises.ts +1 -0
  208. package/src/arguments/generated/_registry/worldgen_placed_features.ts +4 -0
  209. package/src/arguments/generated/_registry/worldgen_world_presets.ts +1 -0
  210. package/src/arguments/generated/assets/atlas.ts +14 -2
  211. package/src/arguments/generated/assets/block_state_definition.ts +30 -0
  212. package/src/arguments/generated/assets/credits.ts +56 -0
  213. package/src/arguments/generated/assets/equipment.ts +4 -5
  214. package/src/arguments/generated/assets/item_definition.ts +31 -31
  215. package/src/arguments/generated/assets/model.ts +133 -0
  216. package/src/arguments/generated/assets/shader/program.ts +4 -0
  217. package/src/arguments/generated/assets/sounds.ts +1 -1
  218. package/src/arguments/generated/assets/texture_meta.ts +174 -28
  219. package/src/arguments/generated/data/advancement/predicate.ts +218 -58
  220. package/src/arguments/generated/data/advancement/trigger.ts +20 -0
  221. package/src/arguments/generated/data/advancement.ts +8 -4
  222. package/src/arguments/generated/data/chat_type.ts +8 -2
  223. package/src/arguments/generated/data/decorated_pot_pattern.ts +8 -0
  224. package/src/arguments/generated/data/dialog/input.ts +22 -0
  225. package/src/arguments/generated/data/dialog.ts +5 -5
  226. package/src/arguments/generated/data/enchantment/effect_component.ts +25 -25
  227. package/src/arguments/generated/data/gametest/test_environment.ts +24 -0
  228. package/src/arguments/generated/data/gametest.ts +1 -2
  229. package/src/arguments/generated/data/item_modifier.ts +3 -1
  230. package/src/arguments/generated/data/loot/condition.ts +129 -112
  231. package/src/arguments/generated/data/loot/function.ts +362 -280
  232. package/src/arguments/generated/data/loot.ts +14 -13
  233. package/src/arguments/generated/data/predicate.ts +3 -1
  234. package/src/arguments/generated/data/recipe.ts +66 -1
  235. package/src/arguments/generated/data/slot_source.ts +119 -0
  236. package/src/arguments/generated/data/structure.ts +63 -0
  237. package/src/arguments/generated/data/sulfur_cube_archetype.ts +92 -0
  238. package/src/arguments/generated/data/trim.ts +9 -1
  239. package/src/arguments/generated/data/util.ts +8 -0
  240. package/src/arguments/generated/data/variants/painting.ts +2 -2
  241. package/src/arguments/generated/data/villager_trade.ts +4 -4
  242. package/src/arguments/generated/data/worldgen/biome.ts +24 -0
  243. package/src/arguments/generated/data/worldgen/carver.ts +28 -0
  244. package/src/arguments/generated/data/worldgen/density_function.ts +29 -1
  245. package/src/arguments/generated/data/worldgen/dimension/biome_source.ts +5 -0
  246. package/src/arguments/generated/data/worldgen/dimension.ts +4 -2
  247. package/src/arguments/generated/data/worldgen/feature/block_predicate.ts +8 -0
  248. package/src/arguments/generated/data/worldgen/feature/tree.ts +58 -4
  249. package/src/arguments/generated/data/worldgen/feature.ts +320 -124
  250. package/src/arguments/generated/data/worldgen/material_condition.ts +119 -0
  251. package/src/arguments/generated/data/worldgen/material_rule.ts +52 -0
  252. package/src/arguments/generated/data/worldgen/noise_settings.ts +7 -2
  253. package/src/arguments/generated/data/worldgen/processor_list.ts +24 -1
  254. package/src/arguments/generated/data/worldgen/structure.ts +79 -2
  255. package/src/arguments/generated/data/worldgen/structure_set.ts +13 -4
  256. package/src/arguments/generated/dispatcher.ts +11 -4
  257. package/src/arguments/generated/pack.ts +8 -0
  258. package/src/arguments/generated/registry-sets.ts +18 -8
  259. package/src/arguments/generated/registry.ts +27 -4
  260. package/src/arguments/generated/resource-paths.ts +3 -0
  261. package/src/arguments/generated/resources.ts +6 -0
  262. package/src/arguments/generated/util/effect.ts +107 -3
  263. package/src/arguments/generated/util/particle.ts +80 -0
  264. package/src/arguments/generated/util/slot.ts +1 -103
  265. package/src/arguments/generated/util/text.ts +207 -0
  266. package/src/arguments/generated/util.ts +2 -0
  267. package/src/arguments/generated/world/block/decorated_pot.ts +3 -5
  268. package/src/arguments/generated/world/block/furnace.ts +4 -0
  269. package/src/arguments/generated/world/block/potent_sulfur.ts +11 -0
  270. package/src/arguments/generated/world/block/test_instance_block.ts +48 -1
  271. package/src/arguments/generated/world/block/vault.ts +62 -0
  272. package/src/arguments/generated/world/component/block.ts +7 -0
  273. package/src/arguments/generated/world/component/item.ts +28 -5
  274. package/src/arguments/generated/world/component/predicate.ts +6 -0
  275. package/src/arguments/generated/world/component.ts +4 -1
  276. package/src/arguments/generated/world/entity/boat.ts +18 -1
  277. package/src/arguments/generated/world/entity/display.ts +35 -0
  278. package/src/arguments/generated/world/entity/mob/breedable/chicken.ts +1 -1
  279. package/src/arguments/generated/world/entity/mob/breedable/cow.ts +1 -1
  280. package/src/arguments/generated/world/entity/mob/breedable/saddled.ts +1 -1
  281. package/src/arguments/generated/world/entity/mob/breedable/tamable.ts +1 -1
  282. package/src/arguments/generated/world/entity/mob/copper_golem.ts +3 -3
  283. package/src/arguments/generated/world/entity/mob/happy_ghast.ts +6 -0
  284. package/src/arguments/generated/world/entity/mob/player.ts +21 -0
  285. package/src/arguments/generated/world/entity/mob/shulker.ts +2 -2
  286. package/src/arguments/generated/world/entity/mob/slime.ts +22 -2
  287. package/src/arguments/generated/world/entity/mob.ts +53 -7
  288. package/src/arguments/generated/world/item/map.ts +14 -0
  289. package/src/arguments/generated/world/item/shield.ts +27 -0
  290. package/src/core/resources/datapack/decoratedPotPattern.ts +47 -0
  291. package/src/core/resources/datapack/index.ts +3 -0
  292. package/src/core/resources/datapack/slotSource.ts +47 -0
  293. package/src/core/resources/datapack/sulfurCubeArchetype.ts +47 -0
  294. package/src/pack/pack.ts +33 -0
  295. package/src/sandstone.ts +24 -0
@@ -9,12 +9,15 @@ import type { BLOCK_ENTITY_TYPES } from 'sandstone/arguments/generated/_registry
9
9
  import type { BLOCK_PREDICATE_TYPES } from 'sandstone/arguments/generated/_registry/block_predicate_types.ts'
10
10
  import type { BLOCK_TYPES } from 'sandstone/arguments/generated/_registry/block_types.ts'
11
11
  import type { BLOCKS } from 'sandstone/arguments/generated/_registry/blocks.ts'
12
+ import type { CAT_SOUND_VARIANTS } from 'sandstone/arguments/generated/_registry/cat_sound_variants.ts'
12
13
  import type { CAT_VARIANTS } from 'sandstone/arguments/generated/_registry/cat_variants.ts'
13
14
  import type { CHAT_TYPES } from 'sandstone/arguments/generated/_registry/chat_types.ts'
15
+ import type { CHICKEN_SOUND_VARIANTS } from 'sandstone/arguments/generated/_registry/chicken_sound_variants.ts'
14
16
  import type { CHICKEN_VARIANTS } from 'sandstone/arguments/generated/_registry/chicken_variants.ts'
15
17
  import type { CHUNK_STATUSES } from 'sandstone/arguments/generated/_registry/chunk_statuses.ts'
16
18
  import type { COMMAND_ARGUMENT_TYPES } from 'sandstone/arguments/generated/_registry/command_argument_types.ts'
17
19
  import type { CONSUME_EFFECT_TYPES } from 'sandstone/arguments/generated/_registry/consume_effect_types.ts'
20
+ import type { COW_SOUND_VARIANTS } from 'sandstone/arguments/generated/_registry/cow_sound_variants.ts'
18
21
  import type { COW_VARIANTS } from 'sandstone/arguments/generated/_registry/cow_variants.ts'
19
22
  import type { CREATIVE_MODE_TABS } from 'sandstone/arguments/generated/_registry/creative_mode_tabs.ts'
20
23
  import type { CUSTOM_STATS } from 'sandstone/arguments/generated/_registry/custom_stats.ts'
@@ -86,6 +89,7 @@ import type { PAINTING_VARIANTS } from 'sandstone/arguments/generated/_registry/
86
89
  import type { PARTICLE_TYPES } from 'sandstone/arguments/generated/_registry/particle_types.ts'
87
90
  import type { PERMISSION_CHECK_TYPES } from 'sandstone/arguments/generated/_registry/permission_check_types.ts'
88
91
  import type { PERMISSION_TYPES } from 'sandstone/arguments/generated/_registry/permission_types.ts'
92
+ import type { PIG_SOUND_VARIANTS } from 'sandstone/arguments/generated/_registry/pig_sound_variants.ts'
89
93
  import type { PIG_VARIANTS } from 'sandstone/arguments/generated/_registry/pig_variants.ts'
90
94
  import type { POINT_OF_INTEREST_TYPES } from 'sandstone/arguments/generated/_registry/point_of_interest_types.ts'
91
95
  import type { POS_RULE_TESTS } from 'sandstone/arguments/generated/_registry/pos_rule_tests.ts'
@@ -109,6 +113,7 @@ import type { SOUNDS } from 'sandstone/arguments/generated/_registry/sounds.ts'
109
113
  import type { SPAWN_CONDITION_TYPES } from 'sandstone/arguments/generated/_registry/spawn_condition_types.ts'
110
114
  import type { STAT_TYPES } from 'sandstone/arguments/generated/_registry/stat_types.ts'
111
115
  import type { STRUCTURES } from 'sandstone/arguments/generated/_registry/structures.ts'
116
+ import type { SULFUR_CUBE_ARCHETYPES } from 'sandstone/arguments/generated/_registry/sulfur_cube_archetypes.ts'
112
117
  import type { TAG_BANNER_PATTERNS } from 'sandstone/arguments/generated/_registry/tag_banner_patterns.ts'
113
118
  import type { TAG_BLOCKS } from 'sandstone/arguments/generated/_registry/tag_blocks.ts'
114
119
  import type { TAG_DAMAGE_TYPES } from 'sandstone/arguments/generated/_registry/tag_damage_types.ts'
@@ -230,11 +235,15 @@ import type { SetType } from 'sandstone'
230
235
  export type Registry = {
231
236
  'minecraft:advancement': ADVANCEMENTS,
232
237
  'minecraft:banner_pattern': BANNER_PATTERNS,
238
+ 'minecraft:cat_sound_variant': CAT_SOUND_VARIANTS,
233
239
  'minecraft:cat_variant': CAT_VARIANTS,
234
240
  'minecraft:chat_type': CHAT_TYPES,
241
+ 'minecraft:chicken_sound_variant': CHICKEN_SOUND_VARIANTS,
235
242
  'minecraft:chicken_variant': CHICKEN_VARIANTS,
243
+ 'minecraft:cow_sound_variant': COW_SOUND_VARIANTS,
236
244
  'minecraft:cow_variant': COW_VARIANTS,
237
245
  'minecraft:damage_type': DAMAGE_TYPES,
246
+ 'minecraft:decorated_pot_pattern': DECORATED_POT_PATTERNS,
238
247
  'minecraft:dialog': DIALOGS,
239
248
  'minecraft:dimension': DIMENSIONS,
240
249
  'minecraft:dimension_type': DIMENSION_TYPES,
@@ -245,9 +254,11 @@ export type Registry = {
245
254
  'minecraft:jukebox_song': JUKEBOX_SONGS,
246
255
  'minecraft:loot_table': LOOT_TABLES,
247
256
  'minecraft:painting_variant': PAINTING_VARIANTS,
257
+ 'minecraft:pig_sound_variant': PIG_SOUND_VARIANTS,
248
258
  'minecraft:pig_variant': PIG_VARIANTS,
249
259
  'minecraft:recipe': RECIPES,
250
260
  'minecraft:structure': STRUCTURES,
261
+ 'minecraft:sulfur_cube_archetype': SULFUR_CUBE_ARCHETYPES,
251
262
  'minecraft:test_environment': TEST_ENVIRONMENTS,
252
263
  'minecraft:test_instance': TEST_INSTANCES,
253
264
  'minecraft:timeline': TIMELINES,
@@ -284,7 +295,10 @@ export type Registry = {
284
295
  'minecraft:worldgen/configured_carver': WORLDGEN_CONFIGURED_CARVERS,
285
296
  'minecraft:worldgen/configured_feature': WORLDGEN_CONFIGURED_FEATURES,
286
297
  'minecraft:worldgen/density_function': WORLDGEN_DENSITY_FUNCTIONS,
298
+ 'minecraft:worldgen/feature': WORLDGEN_FEATURES,
287
299
  'minecraft:worldgen/flat_level_generator_preset': WORLDGEN_FLAT_LEVEL_GENERATOR_PRESETS,
300
+ 'minecraft:worldgen/material_condition': WORLDGEN_MATERIAL_CONDITIONS,
301
+ 'minecraft:worldgen/material_rule': WORLDGEN_MATERIAL_RULES,
288
302
  'minecraft:worldgen/multi_noise_biome_source_parameter_list': WORLDGEN_MULTI_NOISE_BIOME_SOURCE_PARAMETER_LISTS,
289
303
  'minecraft:worldgen/noise': WORLDGEN_NOISES,
290
304
  'minecraft:worldgen/noise_settings': WORLDGEN_NOISE_SETTINGS,
@@ -320,7 +334,6 @@ export type Registry = {
320
334
  'minecraft:data_component_predicate_type': DATA_COMPONENT_PREDICATE_TYPES,
321
335
  'minecraft:data_component_type': DATA_COMPONENT_TYPES,
322
336
  'minecraft:debug_subscription': DEBUG_SUBSCRIPTIONS,
323
- 'minecraft:decorated_pot_pattern': DECORATED_POT_PATTERNS,
324
337
  'minecraft:dialog_action_type': DIALOG_ACTION_TYPES,
325
338
  'minecraft:dialog_body_type': DIALOG_BODY_TYPES,
326
339
  'minecraft:dialog_type': DIALOG_TYPES,
@@ -385,11 +398,8 @@ export type Registry = {
385
398
  'minecraft:worldgen/carver': WORLDGEN_CARVERS,
386
399
  'minecraft:worldgen/chunk_generator': WORLDGEN_CHUNK_GENERATORS,
387
400
  'minecraft:worldgen/density_function_type': WORLDGEN_DENSITY_FUNCTION_TYPES,
388
- 'minecraft:worldgen/feature': WORLDGEN_FEATURES,
389
401
  'minecraft:worldgen/feature_size_type': WORLDGEN_FEATURE_SIZE_TYPES,
390
402
  'minecraft:worldgen/foliage_placer_type': WORLDGEN_FOLIAGE_PLACER_TYPES,
391
- 'minecraft:worldgen/material_condition': WORLDGEN_MATERIAL_CONDITIONS,
392
- 'minecraft:worldgen/material_rule': WORLDGEN_MATERIAL_RULES,
393
403
  'minecraft:worldgen/placement_modifier_type': WORLDGEN_PLACEMENT_MODIFIER_TYPES,
394
404
  'minecraft:worldgen/pool_alias_binding': WORLDGEN_POOL_ALIAS_BINDINGS,
395
405
  'minecraft:worldgen/root_placer_type': WORLDGEN_ROOT_PLACER_TYPES,
@@ -405,11 +415,15 @@ export type Registry = {
405
415
  export const REGISTRIES_SET = new Set([
406
416
  'advancement',
407
417
  'banner_pattern',
418
+ 'cat_sound_variant',
408
419
  'cat_variant',
409
420
  'chat_type',
421
+ 'chicken_sound_variant',
410
422
  'chicken_variant',
423
+ 'cow_sound_variant',
411
424
  'cow_variant',
412
425
  'damage_type',
426
+ 'decorated_pot_pattern',
413
427
  'dialog',
414
428
  'dimension',
415
429
  'dimension_type',
@@ -422,10 +436,13 @@ export const REGISTRIES_SET = new Set([
422
436
  'jukebox_song',
423
437
  'loot_table',
424
438
  'painting_variant',
439
+ 'pig_sound_variant',
425
440
  'pig_variant',
426
441
  'predicate',
427
442
  'recipe',
443
+ 'slot_source',
428
444
  'structure',
445
+ 'sulfur_cube_archetype',
429
446
  'test_environment',
430
447
  'test_instance',
431
448
  'timeline',
@@ -528,9 +545,12 @@ export const REGISTRIES_SET = new Set([
528
545
  'worldgen/density_function_type',
529
546
  'worldgen/feature',
530
547
  'worldgen/feature_size_type',
548
+ 'worldgen/feature_type',
531
549
  'worldgen/foliage_placer_type',
532
550
  'worldgen/material_condition',
551
+ 'worldgen/material_condition_type',
533
552
  'worldgen/material_rule',
553
+ 'worldgen/material_rule_type',
534
554
  'worldgen/placement_modifier_type',
535
555
  'worldgen/pool_alias_binding',
536
556
  'worldgen/root_placer_type',
@@ -549,7 +569,10 @@ export const REGISTRIES_SET = new Set([
549
569
  'worldgen/configured_structure_feature',
550
570
  'worldgen/configured_surface_builder',
551
571
  'worldgen/density_function',
572
+ 'worldgen/feature',
552
573
  'worldgen/flat_level_generator_preset',
574
+ 'worldgen/material_condition',
575
+ 'worldgen/material_rule',
553
576
  'worldgen/multi_noise_biome_source_parameter_list',
554
577
  'worldgen/noise',
555
578
  'worldgen/noise_settings',
@@ -5,13 +5,16 @@ export const RESOURCE_PATHS = {
5
5
  'loot_table': { path: ['loot_table'], pack: 'data', ext: '.json' },
6
6
  'predicate': { path: ['predicate'], pack: 'data', ext: '.json' },
7
7
  'recipe': { path: ['recipe'], pack: 'data', ext: '.json' },
8
+ 'slot_source': { path: ['slot_source'], pack: 'data', ext: '.json' },
8
9
  'structure': { path: ['structure'], pack: 'data', ext: '.nbt' },
10
+ 'sulfur_cube_archetype': { path: ['sulfur_cube_archetype'], pack: 'data', ext: '.json' },
9
11
  'banner_pattern': { path: ['banner_pattern'], pack: 'data', ext: '.json' },
10
12
  'cat_variant': { path: ['cat_variant'], pack: 'data', ext: '.json' },
11
13
  'chat_type': { path: ['chat_type'], pack: 'data', ext: '.json' },
12
14
  'chicken_variant': { path: ['chicken_variant'], pack: 'data', ext: '.json' },
13
15
  'cow_variant': { path: ['cow_variant'], pack: 'data', ext: '.json' },
14
16
  'damage_type': { path: ['damage_type'], pack: 'data', ext: '.json' },
17
+ 'decorated_pot_pattern': { path: ['decorated_pot_pattern'], pack: 'data', ext: '.json' },
15
18
  'dialog': { path: ['dialog'], pack: 'data', ext: '.json' },
16
19
  'enchantment': { path: ['enchantment'], pack: 'data', ext: '.json' },
17
20
  'enchantment_provider': { path: ['enchantment_provider'], pack: 'data', ext: '.json' },
@@ -3,6 +3,7 @@ import {
3
3
  BannerPatternClass,
4
4
  ChatTypeClass,
5
5
  DamageTypeClass,
6
+ DecoratedPotPatternClass,
6
7
  DialogClass,
7
8
  EnchantmentClass,
8
9
  EnchantmentProviderClass,
@@ -13,7 +14,9 @@ import {
13
14
  LootTableClass,
14
15
  PredicateClass,
15
16
  RecipeClass,
17
+ SlotSourceClass,
16
18
  StructureClass,
19
+ SulfurCubeArchetypeClass,
17
20
  TestEnvironmentClass,
18
21
  TestInstanceClass,
19
22
  TimelineClass,
@@ -43,6 +46,7 @@ export const RESOURCE_CLASS_TYPES = [
43
46
  [BannerPatternClass, 'banner_pattern'],
44
47
  [ChatTypeClass, 'chat_type'],
45
48
  [DamageTypeClass, 'damage_type'],
49
+ [DecoratedPotPatternClass, 'decorated_pot_pattern'],
46
50
  [DialogClass, 'dialog'],
47
51
  [EnchantmentClass, 'enchantment'],
48
52
  [EnchantmentProviderClass, 'enchantment_provider'],
@@ -53,7 +57,9 @@ export const RESOURCE_CLASS_TYPES = [
53
57
  [LootTableClass, 'loot_table'],
54
58
  [PredicateClass, 'predicate'],
55
59
  [RecipeClass, 'recipe'],
60
+ [SlotSourceClass, 'slot_source'],
56
61
  [StructureClass, 'structure'],
62
+ [SulfurCubeArchetypeClass, 'sulfur_cube_archetype'],
57
63
  [TestEnvironmentClass, 'test_environment'],
58
64
  [TestInstanceClass, 'test_instance'],
59
65
  [TimelineClass, 'timeline'],
@@ -114,11 +114,67 @@ export type MobEffectInstance = {
114
114
  * Level I having value 0. Defaults to 0.
115
115
  *
116
116
  * Value:
117
- * Range: 0..
117
+ * *either*
118
+ *
119
+ * *item 0*
120
+ *
121
+ * *or*
122
+ *
123
+ * Range: 0..255
124
+ */
125
+ amplifier?: (NBTByte | NBTInt<{
126
+ min: 0,
127
+ }>),
128
+ /**
129
+ * Duration of the effect in ticks. Infinite is represented by `-1`.
130
+ *
131
+ * Value:
132
+ * *either*
133
+ *
134
+ * *item 0*
135
+ *
136
+ * *or*
137
+ *
138
+ * Range: 1..
139
+ */
140
+ duration?: (-1 | NBTInt<{
141
+ min: 1,
142
+ }>),
143
+ /**
144
+ * Whether the effect appears as a HUD icon in addition to in the inventory GUI (same behavior as beacons when `true`). Defaults to `false`.
145
+ */
146
+ ambient?: boolean,
147
+ /**
148
+ * Defaults to `true`.
149
+ */
150
+ show_particles?: boolean,
151
+ /**
152
+ * Whether the effect appears in the inventory GUI. Defaults to `true`
153
+ */
154
+ show_icon?: boolean,
155
+ /**
156
+ * A lower amplifier effect of the same type.
157
+ */
158
+ hidden_effect?: MobEffectInstance,
159
+ }
160
+
161
+ export type ModernMobEffect = {
162
+ id: Registry['minecraft:mob_effect'],
163
+ /**
164
+ * Level I having value 0. Defaults to 0.
165
+ *
166
+ * Value:
167
+ * *either*
168
+ *
169
+ * *item 0*
170
+ *
171
+ * *or*
172
+ *
173
+ * Range: 0..255
118
174
  */
119
- amplifier?: NBTByte<{
175
+ amplifier?: (NBTByte | NBTInt<{
120
176
  min: 0,
121
- }>,
177
+ }>),
122
178
  /**
123
179
  * Duration of the effect in ticks. Infinite is represented by `-1`.
124
180
  *
@@ -151,3 +207,51 @@ export type MobEffectInstance = {
151
207
  */
152
208
  hidden_effect?: MobEffectInstance,
153
209
  }
210
+
211
+ export type OldMobEffect = {
212
+ Id?: EffectId,
213
+ /**
214
+ * Value:
215
+ * *either*
216
+ *
217
+ * *item 0*
218
+ *
219
+ * *or*
220
+ *
221
+ * Range: 0..255
222
+ */
223
+ Amplifier?: (NBTByte | NBTInt<{
224
+ min: 0,
225
+ }>),
226
+ /**
227
+ * Duration of the effect in ticks. Infinite is represented by `-1`.
228
+ *
229
+ * Value:
230
+ * *either*
231
+ *
232
+ * Range: 1..
233
+ *
234
+ * *or*
235
+ *
236
+ * *item 1*
237
+ */
238
+ Duration?: (NBTInt<{
239
+ min: 1,
240
+ }> | -1),
241
+ /**
242
+ * Whether particles are semi-transparent. (like with a Beacon)
243
+ */
244
+ Ambient?: boolean,
245
+ /**
246
+ * Whether particles should be shown.
247
+ */
248
+ ShowParticles?: boolean,
249
+ /**
250
+ * Whether the effect icon should be shown.
251
+ */
252
+ ShowIcon?: boolean,
253
+ /**
254
+ * A lower amplifier effect of the same type.
255
+ */
256
+ HiddenEffect?: MobEffectInstance,
257
+ }
@@ -64,6 +64,34 @@ export type FlashParticle = {
64
64
  color: TranslucentParticle,
65
65
  }
66
66
 
67
+ export type GeyserBaseParticle = {
68
+ /**
69
+ * Scales the particle size and its burst impulse.
70
+ *
71
+ * Value:
72
+ * Range: 1..
73
+ */
74
+ water_blocks: NBTInt<{
75
+ min: 1,
76
+ }>,
77
+ /**
78
+ * Scales the initial burst impulse
79
+ */
80
+ burst_impulse_base: NBTFloat,
81
+ }
82
+
83
+ export type GeyserParticle = {
84
+ /**
85
+ * Scales the particle size and its burst impulse.
86
+ *
87
+ * Value:
88
+ * Range: 1..
89
+ */
90
+ water_blocks: NBTInt<{
91
+ min: 1,
92
+ }>,
93
+ }
94
+
67
95
  export type ItemParticle = {
68
96
  item: ItemStackTemplate,
69
97
  }
@@ -88,6 +116,42 @@ export type LegacyTranslucentParticle = NBTList<NBTFloat, {
88
116
  max: 4,
89
117
  }>
90
118
 
119
+ export type OldDustParticle = {
120
+ r: NBTFloat,
121
+ g: NBTFloat,
122
+ b: NBTFloat,
123
+ /**
124
+ * Value:
125
+ * Range: 0.01..4
126
+ */
127
+ scale: NBTFloat<{
128
+ leftExclusive: false,
129
+ rightExclusive: false,
130
+ min: 0,
131
+ }>,
132
+ }
133
+
134
+ export type OldDustTransition = {
135
+ fromColor: DustColor,
136
+ toColor: DustColor,
137
+ /**
138
+ * Value:
139
+ * Range: 0.01..4
140
+ */
141
+ scale: NBTFloat<{
142
+ leftExclusive: false,
143
+ rightExclusive: false,
144
+ min: 0,
145
+ }>,
146
+ }
147
+
148
+ export type OldEntityEffect = {
149
+ r: NBTFloat,
150
+ g: NBTFloat,
151
+ b: NBTFloat,
152
+ a: NBTFloat,
153
+ }
154
+
91
155
  export type Particle = NonNullable<({
92
156
  [S in Extract<Registry['minecraft:particle_type'], string>]?: ({
93
157
  type: S,
@@ -188,6 +252,14 @@ type ParticleDispatcherMap = {
188
252
  'minecraft:falling_dust': ParticleFallingDust,
189
253
  'flash': ParticleFlash,
190
254
  'minecraft:flash': ParticleFlash,
255
+ 'geyser': ParticleGeyser,
256
+ 'minecraft:geyser': ParticleGeyser,
257
+ 'geyser_base': ParticleGeyserBase,
258
+ 'minecraft:geyser_base': ParticleGeyserBase,
259
+ 'geyser_plume': ParticleGeyserPlume,
260
+ 'minecraft:geyser_plume': ParticleGeyserPlume,
261
+ 'geyser_poof': ParticleGeyserPoof,
262
+ 'minecraft:geyser_poof': ParticleGeyserPoof,
191
263
  'instant_effect': ParticleInstantEffect,
192
264
  'minecraft:instant_effect': ParticleInstantEffect,
193
265
  'item': ParticleItem,
@@ -216,6 +288,10 @@ type ParticleFallback = (
216
288
  | ParticleEntityEffect
217
289
  | ParticleFallingDust
218
290
  | ParticleFlash
291
+ | ParticleGeyser
292
+ | ParticleGeyserBase
293
+ | ParticleGeyserPlume
294
+ | ParticleGeyserPoof
219
295
  | ParticleInstantEffect
220
296
  | ParticleItem
221
297
  | ParticleSculkCharge
@@ -237,6 +313,10 @@ type ParticleEffect = EffectParticle
237
313
  type ParticleEntityEffect = EntityEffectParticle
238
314
  type ParticleFallingDust = BlockParticle
239
315
  type ParticleFlash = FlashParticle
316
+ type ParticleGeyser = GeyserParticle
317
+ type ParticleGeyserBase = GeyserBaseParticle
318
+ type ParticleGeyserPlume = GeyserParticle
319
+ type ParticleGeyserPoof = GeyserBaseParticle
240
320
  type ParticleInstantEffect = EffectParticle
241
321
  type ParticleItem = ItemParticle
242
322
  type ParticleSculkCharge = SculkChargeParticle
@@ -1,28 +1,5 @@
1
- import type { ItemPredicate } from 'sandstone/arguments/generated/data/advancement/predicate.ts'
2
- import type { BlockEntityTarget, EntityTarget } from 'sandstone/arguments/generated/data/loot.ts'
3
- import type { ContainerComponents } from 'sandstone/arguments/generated/data/loot/function.ts'
4
- import type { Registry } from 'sandstone/arguments/generated/registry.ts'
5
1
  import type { ItemStack } from 'sandstone/arguments/generated/world/item.ts'
6
- import type { ENTITY_SLOTS } from 'sandstone/arguments'
7
- import type { NBTObject, RootNBT } from 'sandstone/arguments/nbt.ts'
8
- import type { LiteralUnion, NBTInt } from 'sandstone'
9
-
10
- export type ContentsSlotSource = {
11
- /**
12
- * The slots to search.
13
- */
14
- slot_source: SlotSource,
15
- /**
16
- * If an item targeted by `slot_source` has this container component, selects all items inside.
17
- *
18
- * Value:
19
- *
20
- * - Container(`container`)
21
- * - BundleContents(`bundle_contents`)
22
- * - ChargedProjectiles(`charged_projectiles`)
23
- */
24
- component: (ContainerComponents | `minecraft:${ContainerComponents}`),
25
- }
2
+ import type { NBTObject } from 'sandstone/arguments/nbt.ts'
26
3
 
27
4
  export type EquipmentSlot = ('mainhand' | 'offhand' | 'head' | 'chest' | 'legs' | 'feet' | 'body' | 'saddle')
28
5
 
@@ -39,88 +16,9 @@ export type EquipmentSlotGroup = (
39
16
  | 'body'
40
17
  | 'saddle')
41
18
 
42
- export type FilterSlotSource = {
43
- slot_source: SlotSource,
44
- item_filter: ItemPredicate,
45
- }
46
-
47
- export type GroupSlotSource = {
48
- terms: Array<SlotSource>,
49
- }
50
-
51
- export type LimitCountSlotSource = {
52
- slot_source: SlotSource,
53
- /**
54
- * Value:
55
- * Range: 1..
56
- */
57
- limit: NBTInt<{
58
- min: 1,
59
- }>,
60
- }
61
-
62
- export type RangeSlotSource = {
63
- /**
64
- * Value:
65
- * *either*
66
- *
67
- *
68
- *
69
- * *or*
70
- *
71
- * *item 1*
72
- */
73
- source: (EntityTarget | BlockEntityTarget),
74
- slots: LiteralUnion<ENTITY_SLOTS>,
75
- }
76
-
77
- export type SlotSource = (TypedSlotSource | Array<TypedSlotSource>)
78
-
79
19
  export type SlottedItem<T extends NBTObject> = (ItemStack & {
80
20
  /**
81
21
  * Inventory slot the item is in
82
22
  */
83
23
  Slot?: T,
84
24
  })
85
-
86
- export type TypedSlotSource = NonNullable<({
87
- [S in Extract<Registry['minecraft:slot_source_type'], string>]?: ({
88
- type: S,
89
- } & (S extends keyof SymbolSlotSource ? SymbolSlotSource[S] : RootNBT))
90
- }[Registry['minecraft:slot_source_type']])>
91
- type SlotSourceDispatcherMap = {
92
- 'contents': SlotSourceContents,
93
- 'minecraft:contents': SlotSourceContents,
94
- 'empty': SlotSourceEmpty,
95
- 'minecraft:empty': SlotSourceEmpty,
96
- 'filtered': SlotSourceFiltered,
97
- 'minecraft:filtered': SlotSourceFiltered,
98
- 'group': SlotSourceGroup,
99
- 'minecraft:group': SlotSourceGroup,
100
- 'limit_slots': SlotSourceLimitSlots,
101
- 'minecraft:limit_slots': SlotSourceLimitSlots,
102
- 'slot_range': SlotSourceSlotRange,
103
- 'minecraft:slot_range': SlotSourceSlotRange,
104
- }
105
- type SlotSourceKeys = keyof SlotSourceDispatcherMap
106
- type SlotSourceFallback = (
107
- | SlotSourceContents
108
- | SlotSourceEmpty
109
- | SlotSourceFiltered
110
- | SlotSourceGroup
111
- | SlotSourceLimitSlots
112
- | SlotSourceSlotRange)
113
- type SlotSourceContents = ContentsSlotSource
114
- type SlotSourceEmpty = Record<string, never>
115
- type SlotSourceFiltered = FilterSlotSource
116
- type SlotSourceGroup = GroupSlotSource
117
- type SlotSourceLimitSlots = LimitCountSlotSource
118
- type SlotSourceSlotRange = RangeSlotSource
119
- export type SymbolSlotSource<CASE extends
120
- | 'map'
121
- | 'keys'
122
- | '%fallback'
123
- | '%none'
124
- | '%unknown' = 'map'> = CASE extends 'map'
125
- ? SlotSourceDispatcherMap
126
- : CASE extends 'keys' ? SlotSourceKeys : CASE extends '%fallback' ? SlotSourceFallback : never