sandstone 1.1.6 → 1.2.1
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.
- package/dist/_internal/index.d.ts +34 -230
- package/dist/_internal/index.d.ts.map +1 -1
- package/dist/_internal/index.js +2261 -692
- package/dist/_internal/index.js.map +1 -1
- package/dist/_internal/types/arguments/generated/_builtin/block_state_keys.d.ts +175 -1
- package/dist/_internal/types/arguments/generated/_builtin/block_state_keys.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_builtin/block_states.d.ts +387 -1
- package/dist/_internal/types/arguments/generated/_builtin/block_states.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_dispatcher/block.d.ts +16 -4
- package/dist/_internal/types/arguments/generated/_dispatcher/block.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_dispatcher/resource.d.ts +27 -1
- package/dist/_internal/types/arguments/generated/_dispatcher/resource.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/advancements.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/advancements.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/atlases.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/atlases.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/attribute_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/attribute_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/block_definitions.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/block_definitions.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/block_predicate_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/block_predicate_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/block_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/blocks.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/blocks.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/command_argument_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/command_argument_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/custom_stats.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/custom_stats.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/data_component_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/data_component_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/decorated_pot_patterns.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/decorated_pot_patterns.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/entity_sub_predicate_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/entity_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/entity_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/environment_attributes.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/environment_attributes.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/fluids.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/int_provider_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/int_provider_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/item_definitions.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/item_definitions.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/items.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/items.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/langs.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/langs.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/loot_condition_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/loot_condition_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/loot_function_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/loot_function_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/loot_number_provider_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/loot_number_provider_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/loot_pool_entry_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/loot_tables.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/loot_tables.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/mob_effects.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/models.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/models.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/number_format_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/number_providers.d.ts +5 -0
- package/dist/_internal/types/arguments/generated/_registry/number_providers.d.ts.map +1 -0
- package/dist/_internal/types/arguments/generated/_registry/outgoing_rpc_methods.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/outgoing_rpc_methods.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/particle_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/particle_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/point_of_interest_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/post_effects.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/post_effects.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/potions.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/predicates.d.ts +5 -0
- package/dist/_internal/types/arguments/generated/_registry/predicates.d.ts.map +1 -0
- package/dist/_internal/types/arguments/generated/_registry/recipe_serializers.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/recipe_serializers.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/recipe_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/recipe_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/recipes.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/recipes.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/rule_tests.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/rule_tests.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/sound_events.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/sound_events.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/sounds.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/sounds.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/spawn_condition_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/structures.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/structures.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_blocks.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_blocks.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_damage_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_damage_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_entity_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_entity_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_items.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_items.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_worldgen_biomes.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_worldgen_biomes.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_worldgen_features.d.ts +5 -0
- package/dist/_internal/types/arguments/generated/_registry/tag_worldgen_features.d.ts.map +1 -0
- package/dist/_internal/types/arguments/generated/_registry/tag_worldgen_structures.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_worldgen_structures.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/textures.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/textures.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/trim_materials.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/villager_trades.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/villager_trades.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_biomes.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_biomes.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_block_state_provider_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_block_state_provider_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_carver_types.d.ts +5 -0
- package/dist/_internal/types/arguments/generated/_registry/worldgen_carver_types.d.ts.map +1 -0
- package/dist/_internal/types/arguments/generated/_registry/worldgen_carvers.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_carvers.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_configured_carvers.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_configured_features.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_density_function_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_density_function_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_density_functions.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_density_functions.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_feature_types.d.ts +5 -0
- package/dist/_internal/types/arguments/generated/_registry/worldgen_feature_types.d.ts.map +1 -0
- package/dist/_internal/types/arguments/generated/_registry/worldgen_features.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_features.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_foliage_placer_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_foliage_placer_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_material_condition_types.d.ts +5 -0
- package/dist/_internal/types/arguments/generated/_registry/worldgen_material_condition_types.d.ts.map +1 -0
- package/dist/_internal/types/arguments/generated/_registry/worldgen_material_conditions.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_material_conditions.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_material_rule_types.d.ts +5 -0
- package/dist/_internal/types/arguments/generated/_registry/worldgen_material_rule_types.d.ts.map +1 -0
- package/dist/_internal/types/arguments/generated/_registry/worldgen_material_rules.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_material_rules.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_noise_settings.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_noises.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_noises.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_placed_features.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_placed_features.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_placement_modifier_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_placement_modifier_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_structure_placements.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_structure_placements.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_structure_sets.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_structure_sets.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_structures.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_structures.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_template_pools.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_template_pools.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_tree_decorator_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_tree_decorator_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_trunk_placer_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_trunk_placer_types.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/assets/atlas.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/assets/atlas.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/assets/equipment.d.ts +7 -0
- package/dist/_internal/types/arguments/generated/assets/equipment.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/assets/item_definition.d.ts +1 -10
- package/dist/_internal/types/arguments/generated/assets/item_definition.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/assets/model.d.ts +11 -0
- package/dist/_internal/types/arguments/generated/assets/model.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/assets/texture_meta.d.ts +6 -0
- package/dist/_internal/types/arguments/generated/assets/texture_meta.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/advancement/predicate.d.ts +4 -22
- package/dist/_internal/types/arguments/generated/data/advancement/predicate.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/advancement/trigger.d.ts +27 -13
- package/dist/_internal/types/arguments/generated/data/advancement/trigger.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/advancement.d.ts +2 -1
- package/dist/_internal/types/arguments/generated/data/advancement.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/dialog.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/data/dialog.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/item_modifier.d.ts +2 -1
- package/dist/_internal/types/arguments/generated/data/item_modifier.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/loot/condition.d.ts +8 -4
- package/dist/_internal/types/arguments/generated/data/loot/condition.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/loot/function.d.ts +16 -4
- package/dist/_internal/types/arguments/generated/data/loot/function.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/loot.d.ts +30 -6
- package/dist/_internal/types/arguments/generated/data/loot.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/number_provider.d.ts +17 -4
- package/dist/_internal/types/arguments/generated/data/number_provider.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/predicate.d.ts +4 -2
- package/dist/_internal/types/arguments/generated/data/predicate.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/recipe.d.ts +4 -1
- package/dist/_internal/types/arguments/generated/data/recipe.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/slot_source.d.ts +20 -2
- package/dist/_internal/types/arguments/generated/data/slot_source.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/trim.d.ts +5 -0
- package/dist/_internal/types/arguments/generated/data/trim.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/variants/instrument.d.ts +18 -3
- package/dist/_internal/types/arguments/generated/data/variants/instrument.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/villager_trade.d.ts +9 -0
- package/dist/_internal/types/arguments/generated/data/villager_trade.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/attribute.d.ts +17 -2
- package/dist/_internal/types/arguments/generated/data/worldgen/attribute.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/biome.d.ts +3 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/biome.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/carver.d.ts +24 -6
- package/dist/_internal/types/arguments/generated/data/worldgen/carver.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/density_function.d.ts +33 -4
- package/dist/_internal/types/arguments/generated/data/worldgen/density_function.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/dimension.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/dimension.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/feature/block_state_provider.d.ts +20 -2
- package/dist/_internal/types/arguments/generated/data/worldgen/feature/block_state_provider.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/feature/placement.d.ts +11 -2
- package/dist/_internal/types/arguments/generated/data/worldgen/feature/placement.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/feature/tree.d.ts +12 -5
- package/dist/_internal/types/arguments/generated/data/worldgen/feature/tree.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/feature.d.ts +50 -60
- package/dist/_internal/types/arguments/generated/data/worldgen/feature.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/material_condition.d.ts +3 -3
- package/dist/_internal/types/arguments/generated/data/worldgen/material_condition.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/material_rule.d.ts +3 -3
- package/dist/_internal/types/arguments/generated/data/worldgen/material_rule.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/noise_settings.d.ts +4 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/noise_settings.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/processor_list.d.ts +14 -2
- package/dist/_internal/types/arguments/generated/data/worldgen/processor_list.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/data/worldgen.d.ts +6 -1
- package/dist/_internal/types/arguments/generated/data/worldgen.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/dispatcher.d.ts +3 -3
- package/dist/_internal/types/arguments/generated/dispatcher.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/registry-sets.d.ts +8 -5
- package/dist/_internal/types/arguments/generated/registry-sets.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/registry.d.ts +16 -10
- package/dist/_internal/types/arguments/generated/registry.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/resource-paths.d.ts +15 -0
- package/dist/_internal/types/arguments/generated/resource-paths.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/resources.d.ts +2 -2
- package/dist/_internal/types/arguments/generated/resources.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/block/brewing_stand.d.ts +15 -3
- package/dist/_internal/types/arguments/generated/world/block/brewing_stand.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/block/decorated_pot.d.ts +7 -0
- package/dist/_internal/types/arguments/generated/world/block/decorated_pot.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/block/furnace.d.ts +9 -5
- package/dist/_internal/types/arguments/generated/world/block/furnace.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/block/sign.d.ts +8 -0
- package/dist/_internal/types/arguments/generated/world/block/sign.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/component/item.d.ts +43 -10
- package/dist/_internal/types/arguments/generated/world/component/item.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/component/predicate.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/world/component/predicate.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/entity/boat.d.ts +11 -1
- package/dist/_internal/types/arguments/generated/world/entity/boat.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/entity/mob/player.d.ts +2 -1
- package/dist/_internal/types/arguments/generated/world/entity/mob/player.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/entity/mob.d.ts +0 -4
- package/dist/_internal/types/arguments/generated/world/entity/mob.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/entity/projectile.d.ts +2 -0
- package/dist/_internal/types/arguments/generated/world/entity/projectile.d.ts.map +1 -1
- package/dist/_internal/types/arguments/generated/world/entity.d.ts +4 -0
- package/dist/_internal/types/arguments/generated/world/entity.d.ts.map +1 -1
- package/dist/_internal/types/commands/commands.d.ts +2 -1
- package/dist/_internal/types/commands/commands.d.ts.map +1 -1
- package/dist/_internal/types/commands/implementations/entity/execute.d.ts +53 -5
- package/dist/_internal/types/commands/implementations/entity/execute.d.ts.map +1 -1
- package/dist/_internal/types/commands/implementations/index.d.ts +1 -0
- package/dist/_internal/types/commands/implementations/index.d.ts.map +1 -1
- package/dist/_internal/types/commands/implementations/player/posteffect.d.ts +61 -0
- package/dist/_internal/types/commands/implementations/player/posteffect.d.ts.map +1 -0
- package/dist/_internal/types/commands/implementations/world/item.d.ts +73 -11
- package/dist/_internal/types/commands/implementations/world/item.d.ts.map +1 -1
- package/dist/_internal/types/core/resources/datapack/decoratedPotPattern.d.ts +25 -0
- package/dist/_internal/types/core/resources/datapack/decoratedPotPattern.d.ts.map +1 -0
- package/dist/_internal/types/core/resources/datapack/index.d.ts +2 -0
- package/dist/_internal/types/core/resources/datapack/index.d.ts.map +1 -1
- package/dist/_internal/types/core/resources/datapack/slotSource.d.ts +27 -0
- package/dist/_internal/types/core/resources/datapack/slotSource.d.ts.map +1 -0
- package/dist/_internal/types/flow/Flow.d.ts +32 -6
- package/dist/_internal/types/flow/Flow.d.ts.map +1 -1
- package/dist/_internal/types/flow/conditions/command.d.ts.map +1 -1
- package/dist/_internal/types/flow/conditions/condition.d.ts +0 -8
- package/dist/_internal/types/flow/conditions/condition.d.ts.map +1 -1
- package/dist/_internal/types/flow/conditions/index.d.ts +3 -0
- package/dist/_internal/types/flow/conditions/index.d.ts.map +1 -1
- package/dist/_internal/types/flow/conditions/resources/index.d.ts +1 -0
- package/dist/_internal/types/flow/conditions/resources/index.d.ts.map +1 -1
- package/dist/_internal/types/flow/conditions/resources/slotSource.d.ts +14 -0
- package/dist/_internal/types/flow/conditions/resources/slotSource.d.ts.map +1 -0
- package/dist/_internal/types/flow/conditions/variables/dataPoint.d.ts.map +1 -1
- package/dist/_internal/types/flow/conditions/variables/items.d.ts +40 -7
- package/dist/_internal/types/flow/conditions/variables/items.d.ts.map +1 -1
- package/dist/_internal/types/pack/pack.d.ts +8 -3
- package/dist/_internal/types/pack/pack.d.ts.map +1 -1
- package/dist/_internal/types/pack/visitors/orTransformationVisitor.d.ts +6 -41
- package/dist/_internal/types/pack/visitors/orTransformationVisitor.d.ts.map +1 -1
- package/dist/_internal/types/variables/abstractClasses.d.ts +0 -9
- package/dist/_internal/types/variables/abstractClasses.d.ts.map +1 -1
- package/dist/browser/sandstone.esm.js +2261 -692
- package/dist/browser/sandstone.esm.js.map +1 -1
- package/dist/exports/arguments/index.d.ts +1 -1
- package/dist/exports/arguments/index.js +1 -1
- package/dist/exports/commands/index.d.ts +1 -1
- package/dist/exports/commands/index.js +1 -1
- package/dist/exports/core/index.d.ts +1 -1
- package/dist/exports/core/index.js +1 -1
- package/dist/exports/flow/index.d.ts +1 -1
- package/dist/exports/flow/index.js +1 -1
- package/dist/exports/index.d.ts +1 -1
- package/dist/exports/index.js +1 -1
- package/dist/exports/variables/index.d.ts +1 -1
- package/dist/exports/variables/index.js +1 -1
- package/package.json +3 -3
- package/src/arguments/generated/_builtin/block_state_keys.ts +232 -0
- package/src/arguments/generated/_builtin/block_states.ts +444 -0
- package/src/arguments/generated/_dispatcher/block.ts +20 -4
- package/src/arguments/generated/_dispatcher/resource.ts +33 -0
- package/src/arguments/generated/_registry/advancements.ts +114 -0
- package/src/arguments/generated/_registry/atlases.ts +0 -1
- package/src/arguments/generated/_registry/attribute_types.ts +1 -0
- package/src/arguments/generated/_registry/block_definitions.ts +58 -0
- package/src/arguments/generated/_registry/block_predicate_types.ts +1 -0
- package/src/arguments/generated/_registry/blocks.ts +58 -0
- package/src/arguments/generated/_registry/command_argument_types.ts +2 -0
- package/src/arguments/generated/_registry/custom_stats.ts +1 -0
- package/src/arguments/generated/_registry/data_component_types.ts +11 -0
- package/src/arguments/generated/_registry/decorated_pot_patterns.ts +0 -1
- package/src/arguments/generated/_registry/entity_types.ts +3 -0
- package/src/arguments/generated/_registry/environment_attributes.ts +3 -0
- package/src/arguments/generated/_registry/int_provider_types.ts +1 -0
- package/src/arguments/generated/_registry/item_definitions.ts +73 -0
- package/src/arguments/generated/_registry/items.ts +73 -0
- package/src/arguments/generated/_registry/langs.ts +1 -0
- package/src/arguments/generated/_registry/loot_condition_types.ts +1 -2
- package/src/arguments/generated/_registry/loot_function_types.ts +0 -1
- package/src/arguments/generated/_registry/loot_number_provider_types.ts +3 -0
- package/src/arguments/generated/_registry/loot_tables.ts +60 -0
- package/src/arguments/generated/_registry/models.ts +170 -2
- package/src/arguments/generated/_registry/number_providers.ts +35 -0
- package/src/arguments/generated/_registry/outgoing_rpc_methods.ts +4 -0
- package/src/arguments/generated/_registry/particle_types.ts +3 -0
- package/src/arguments/generated/_registry/post_effects.ts +0 -1
- package/src/arguments/generated/_registry/predicates.ts +12 -0
- package/src/arguments/generated/_registry/recipe_serializers.ts +1 -0
- package/src/arguments/generated/_registry/recipe_types.ts +1 -0
- package/src/arguments/generated/_registry/recipes.ts +393 -0
- package/src/arguments/generated/_registry/rule_tests.ts +4 -0
- package/src/arguments/generated/_registry/sound_events.ts +23 -0
- package/src/arguments/generated/_registry/sounds.ts +98 -8
- package/src/arguments/generated/_registry/structures.ts +279 -0
- package/src/arguments/generated/_registry/tag_blocks.ts +29 -3
- package/src/arguments/generated/_registry/tag_damage_types.ts +1 -0
- package/src/arguments/generated/_registry/tag_entity_types.ts +1 -0
- package/src/arguments/generated/_registry/tag_items.ts +7 -1
- package/src/arguments/generated/_registry/tag_worldgen_biomes.ts +18 -0
- package/src/arguments/generated/_registry/tag_worldgen_features.ts +10 -0
- package/src/arguments/generated/_registry/tag_worldgen_structures.ts +1 -0
- package/src/arguments/generated/_registry/textures.ts +101 -18
- package/src/arguments/generated/_registry/villager_trades.ts +3 -0
- package/src/arguments/generated/_registry/worldgen_biomes.ts +1 -0
- package/src/arguments/generated/_registry/worldgen_block_state_provider_types.ts +2 -0
- package/src/arguments/generated/_registry/worldgen_carver_types.ts +11 -0
- package/src/arguments/generated/_registry/worldgen_carvers.ts +1 -0
- package/src/arguments/generated/_registry/worldgen_density_function_types.ts +9 -1
- package/src/arguments/generated/_registry/worldgen_density_functions.ts +16 -0
- package/src/arguments/generated/_registry/worldgen_feature_types.ts +68 -0
- package/src/arguments/generated/_registry/worldgen_features.ts +220 -43
- package/src/arguments/generated/_registry/worldgen_foliage_placer_types.ts +1 -0
- package/src/arguments/generated/_registry/worldgen_material_condition_types.ts +20 -0
- package/src/arguments/generated/_registry/worldgen_material_conditions.ts +8 -11
- package/src/arguments/generated/_registry/worldgen_material_rule_types.ts +13 -0
- package/src/arguments/generated/_registry/worldgen_material_rules.ts +40 -4
- package/src/arguments/generated/_registry/worldgen_noises.ts +1 -0
- package/src/arguments/generated/_registry/worldgen_placed_features.ts +11 -0
- package/src/arguments/generated/_registry/worldgen_placement_modifier_types.ts +3 -1
- package/src/arguments/generated/_registry/worldgen_structure_placements.ts +1 -0
- package/src/arguments/generated/_registry/worldgen_structure_sets.ts +1 -0
- package/src/arguments/generated/_registry/worldgen_structures.ts +18 -0
- package/src/arguments/generated/_registry/worldgen_template_pools.ts +57 -0
- package/src/arguments/generated/_registry/worldgen_tree_decorator_types.ts +1 -0
- package/src/arguments/generated/_registry/worldgen_trunk_placer_types.ts +1 -0
- package/src/arguments/generated/assets/atlas.ts +1 -1
- package/src/arguments/generated/assets/equipment.ts +7 -0
- package/src/arguments/generated/assets/item_definition.ts +0 -12
- package/src/arguments/generated/assets/model.ts +11 -0
- package/src/arguments/generated/assets/texture_meta.ts +6 -0
- package/src/arguments/generated/data/advancement/predicate.ts +9 -26
- package/src/arguments/generated/data/advancement/trigger.ts +29 -13
- package/src/arguments/generated/data/advancement.ts +2 -1
- package/src/arguments/generated/data/dialog.ts +1 -1
- package/src/arguments/generated/data/item_modifier.ts +7 -1
- package/src/arguments/generated/data/loot/condition.ts +10 -2
- package/src/arguments/generated/data/loot/function.ts +22 -4
- package/src/arguments/generated/data/loot.ts +34 -6
- package/src/arguments/generated/data/number_provider.ts +26 -4
- package/src/arguments/generated/data/predicate.ts +8 -2
- package/src/arguments/generated/data/recipe.ts +4 -0
- package/src/arguments/generated/data/slot_source.ts +23 -2
- package/src/arguments/generated/data/trim.ts +5 -0
- package/src/arguments/generated/data/variants/instrument.ts +18 -3
- package/src/arguments/generated/data/villager_trade.ts +9 -0
- package/src/arguments/generated/data/worldgen/attribute.ts +24 -1
- package/src/arguments/generated/data/worldgen/biome.ts +3 -1
- package/src/arguments/generated/data/worldgen/carver.ts +34 -7
- package/src/arguments/generated/data/worldgen/density_function.ts +41 -4
- package/src/arguments/generated/data/worldgen/dimension.ts +1 -2
- package/src/arguments/generated/data/worldgen/feature/block_state_provider.ts +21 -1
- package/src/arguments/generated/data/worldgen/feature/placement.ts +13 -1
- package/src/arguments/generated/data/worldgen/feature/tree.ts +13 -3
- package/src/arguments/generated/data/worldgen/feature.ts +59 -65
- package/src/arguments/generated/data/worldgen/material_condition.ts +7 -3
- package/src/arguments/generated/data/worldgen/material_rule.ts +7 -3
- package/src/arguments/generated/data/worldgen/noise_settings.ts +4 -1
- package/src/arguments/generated/data/worldgen/processor_list.ts +17 -2
- package/src/arguments/generated/data/worldgen.ts +7 -0
- package/src/arguments/generated/dispatcher.ts +8 -8
- package/src/arguments/generated/registry-sets.ts +14 -8
- package/src/arguments/generated/registry.ts +22 -15
- package/src/arguments/generated/resource-paths.ts +3 -0
- package/src/arguments/generated/resources.ts +4 -0
- package/src/arguments/generated/world/block/brewing_stand.ts +15 -3
- package/src/arguments/generated/world/block/decorated_pot.ts +7 -0
- package/src/arguments/generated/world/block/furnace.ts +9 -5
- package/src/arguments/generated/world/block/sign.ts +8 -0
- package/src/arguments/generated/world/component/item.ts +58 -8
- package/src/arguments/generated/world/component/predicate.ts +1 -1
- package/src/arguments/generated/world/entity/boat.ts +13 -0
- package/src/arguments/generated/world/entity/mob/player.ts +12 -1
- package/src/arguments/generated/world/entity/mob.ts +0 -4
- package/src/arguments/generated/world/entity/projectile.ts +2 -0
- package/src/arguments/generated/world/entity.ts +4 -0
- package/src/commands/commands.ts +5 -0
- package/src/commands/implementations/entity/execute.ts +65 -8
- package/src/commands/implementations/index.ts +1 -0
- package/src/commands/implementations/player/posteffect.ts +75 -0
- package/src/commands/implementations/world/item.ts +96 -19
- package/src/core/resources/datapack/decoratedPotPattern.ts +47 -0
- package/src/core/resources/datapack/index.ts +2 -2
- package/src/core/resources/datapack/slotSource.ts +58 -0
- package/src/flow/Flow.ts +43 -11
- package/src/flow/conditions/command.ts +0 -7
- package/src/flow/conditions/condition.ts +0 -9
- package/src/flow/conditions/index.ts +3 -0
- package/src/flow/conditions/resources/index.ts +1 -0
- package/src/flow/conditions/resources/slotSource.ts +21 -0
- package/src/flow/conditions/variables/dataPoint.ts +3 -11
- package/src/flow/conditions/variables/items.ts +53 -5
- package/src/pack/pack.ts +28 -7
- package/src/pack/visitors/orTransformationVisitor.ts +37 -311
- package/src/sandstone.ts +56 -3
- package/src/utils.ts +1 -1
- package/src/variables/abstractClasses.ts +0 -10
package/src/flow/Flow.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import type {
|
|
2
2
|
Registry,
|
|
3
|
-
ContainerSlotSelector,
|
|
4
3
|
Coordinates,
|
|
5
|
-
EntitySlotSelector,
|
|
6
4
|
JSONTextComponent,
|
|
7
5
|
MultipleEntitiesArgument,
|
|
8
6
|
MultiplePlayersArgument,
|
|
@@ -11,6 +9,7 @@ import type {
|
|
|
11
9
|
SymbolBlock,
|
|
12
10
|
SymbolMcdocBlockStates,
|
|
13
11
|
} from 'sandstone/arguments'
|
|
12
|
+
import type { ItemSlotSource } from '../commands/implementations/world/item'
|
|
14
13
|
import type {
|
|
15
14
|
ConditionClass,
|
|
16
15
|
DataPointClass,
|
|
@@ -21,7 +20,7 @@ import type {
|
|
|
21
20
|
import { parseJSONText, Score } from 'sandstone/variables'
|
|
22
21
|
import type { DataPointPickClass, MCFunctionClass, PredicateClass, SandstoneCore } from '../core'
|
|
23
22
|
import type { LiteralUnion, NamespacedLiteralUnion } from '../utils'
|
|
24
|
-
import { AndNode, ConditionNode, NotNode, OrNode, SandstoneConditions, type BlockConditionNode, type ItemsBlockConditionNode, type ItemsEntityConditionNode } from './conditions'
|
|
23
|
+
import { AndNode, ConditionNode, NotNode, OrNode, SandstoneConditions, type BlockConditionNode, type ItemsBlockConditionNode, type ItemsEntityConditionNode, type SlotsBlockConditionNode, type SlotsEntityConditionNode } from './conditions'
|
|
25
24
|
import type { ItemPredicate } from './conditions/variables/items'
|
|
26
25
|
import { IfStatement } from './if_else'
|
|
27
26
|
import type { ForOfIterator } from './loops'
|
|
@@ -486,24 +485,57 @@ export class Flow {
|
|
|
486
485
|
* Test for items in a block entity's inventory slots.
|
|
487
486
|
*
|
|
488
487
|
* @param sourcePos Position of the block entity to test.
|
|
489
|
-
* @param
|
|
488
|
+
* @param slotSource Slot source to test (e.g., `'container.*'`, inline slot source, or a slot source reference).
|
|
490
489
|
* @param itemPredicate Item predicate to match against.
|
|
491
490
|
*/
|
|
492
|
-
block: (sourcePos: Coordinates,
|
|
491
|
+
block: (sourcePos: Coordinates, slotSource: ItemSlotSource, itemPredicate: ItemPredicate) => ItemsBlockConditionNode
|
|
493
492
|
/**
|
|
494
493
|
* Test for items in an entity's inventory slots.
|
|
495
494
|
*
|
|
496
495
|
* @param source Entity to test.
|
|
497
|
-
* @param
|
|
496
|
+
* @param slotSource Slot source to test (e.g., `'inventory.*'`, inline slot source, or a slot source reference).
|
|
498
497
|
* @param itemPredicate Item predicate to match against.
|
|
499
498
|
*/
|
|
500
|
-
entity: (source: MultipleEntitiesArgument,
|
|
499
|
+
entity: (source: MultipleEntitiesArgument, slotSource: ItemSlotSource, itemPredicate: ItemPredicate) => ItemsEntityConditionNode
|
|
501
500
|
} {
|
|
502
501
|
return {
|
|
503
|
-
block: (sourcePos: Coordinates,
|
|
504
|
-
new SandstoneConditions.ItemsBlock(this.sandstoneCore, sourcePos,
|
|
505
|
-
entity: (source: MultipleEntitiesArgument,
|
|
506
|
-
new SandstoneConditions.ItemsEntity(this.sandstoneCore, source,
|
|
502
|
+
block: (sourcePos: Coordinates, slotSource: ItemSlotSource, itemPredicate: ItemPredicate) =>
|
|
503
|
+
new SandstoneConditions.ItemsBlock(this.sandstoneCore, sourcePos, slotSource, itemPredicate),
|
|
504
|
+
entity: (source: MultipleEntitiesArgument, slotSource: ItemSlotSource, itemPredicate: ItemPredicate) =>
|
|
505
|
+
new SandstoneConditions.ItemsEntity(this.sandstoneCore, source, slotSource, itemPredicate),
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
/**
|
|
510
|
+
* Counts slots from a slot source that are present in a block entity or entity.
|
|
511
|
+
*
|
|
512
|
+
* @example
|
|
513
|
+
* ```ts
|
|
514
|
+
* _.if(_.slots.entity('@p', 'inventory.*'), () => { ... })
|
|
515
|
+
* _.if(_.slots.block(abs(0, 64, 0), { type: 'minecraft:slot_range', slots: 'armor.chest' }), () => { ... })
|
|
516
|
+
* ```
|
|
517
|
+
*/
|
|
518
|
+
get slots(): {
|
|
519
|
+
/**
|
|
520
|
+
* Count slots from a slot source that are present in a block entity.
|
|
521
|
+
*
|
|
522
|
+
* @param sourcePos Position of the block entity to test.
|
|
523
|
+
* @param slotSource Slot source (e.g., `'container.*'`, inline slot source, or a slot source reference).
|
|
524
|
+
*/
|
|
525
|
+
block: (sourcePos: Coordinates, slotSource: ItemSlotSource) => SlotsBlockConditionNode
|
|
526
|
+
/**
|
|
527
|
+
* Count slots from a slot source that are present in an entity.
|
|
528
|
+
*
|
|
529
|
+
* @param source Entity to test.
|
|
530
|
+
* @param slotSource Slot source (e.g., `'inventory.*'`, inline slot source, or a slot source reference).
|
|
531
|
+
*/
|
|
532
|
+
entity: (source: MultipleEntitiesArgument, slotSource: ItemSlotSource) => SlotsEntityConditionNode
|
|
533
|
+
} {
|
|
534
|
+
return {
|
|
535
|
+
block: (sourcePos: Coordinates, slotSource: ItemSlotSource) =>
|
|
536
|
+
new SandstoneConditions.SlotsBlock(this.sandstoneCore, sourcePos, slotSource),
|
|
537
|
+
entity: (source: MultipleEntitiesArgument, slotSource: ItemSlotSource) =>
|
|
538
|
+
new SandstoneConditions.SlotsEntity(this.sandstoneCore, source, slotSource),
|
|
507
539
|
}
|
|
508
540
|
}
|
|
509
541
|
|
|
@@ -20,14 +20,7 @@ export class CommandConditionNode extends SingleConditionNode {
|
|
|
20
20
|
const store = sandstoneCore.pack.commands.execute.store[type]
|
|
21
21
|
this.variable = sandstoneCore.pack.Variable(undefined, 'condition')
|
|
22
22
|
|
|
23
|
-
// Snapshot before/after so commands the callback commits land in `preNodes` instead of
|
|
24
|
-
// staying on the user MCFunction body, where they'd be stranded when visitor extraction
|
|
25
|
-
// moves the surrounding condition chain elsewhere.
|
|
26
|
-
const mcFunction = sandstoneCore.getCurrentMCFunctionOrThrow()
|
|
27
|
-
const before = mcFunction.body.length
|
|
28
23
|
command(store(this.variable))
|
|
29
|
-
const after = mcFunction.body.length
|
|
30
|
-
this.preNodes = mcFunction.body.splice(before, after - before)
|
|
31
24
|
}
|
|
32
25
|
|
|
33
26
|
getCondition(): unknown[] {
|
|
@@ -18,15 +18,6 @@ export type GenericConditionType = {
|
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
export abstract class ConditionNode extends Node {
|
|
21
|
-
/**
|
|
22
|
-
* Optional commands that must run before this condition's predicate is evaluated.
|
|
23
|
-
* Conditions that emit side-effect commands at construction time (e.g. `data.equals`
|
|
24
|
-
* building an `execute store result ...`) capture them here so the visitor pass can
|
|
25
|
-
* re-emit them at the correct location — inline before the IfNode, or inside the
|
|
26
|
-
* child MCFunction when AND/OR extracts. Pure predicates leave it unset.
|
|
27
|
-
*/
|
|
28
|
-
preNodes?: Node[]
|
|
29
|
-
|
|
30
21
|
abstract getValue: (negated?: boolean) => string
|
|
31
22
|
}
|
|
32
23
|
|
|
@@ -11,6 +11,7 @@ import * as variables from './variables'
|
|
|
11
11
|
export const SandstoneConditions = {
|
|
12
12
|
Advancement: resources.AdvancementConditionNode,
|
|
13
13
|
Predicate: resources.PredicateConditionNode,
|
|
14
|
+
SlotSource: resources.SlotSourceConditionNode,
|
|
14
15
|
Tag: resources.TagConditionNode,
|
|
15
16
|
|
|
16
17
|
Biome: variables.BiomeConditionNode,
|
|
@@ -20,6 +21,8 @@ export const SandstoneConditions = {
|
|
|
20
21
|
Function: variables.FunctionConditionNode,
|
|
21
22
|
ItemsBlock: variables.ItemsBlockConditionNode,
|
|
22
23
|
ItemsEntity: variables.ItemsEntityConditionNode,
|
|
24
|
+
SlotsBlock: variables.SlotsBlockConditionNode,
|
|
25
|
+
SlotsEntity: variables.SlotsEntityConditionNode,
|
|
23
26
|
Loaded: variables.LoadedConditionNode,
|
|
24
27
|
DataPointExists: variables.DataPointExistsConditionNode,
|
|
25
28
|
DataPointEquals: variables.DataPointEqualsConditionNode,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SandstoneCore } from 'sandstone/core'
|
|
2
|
+
import { SingleConditionNode } from '../condition'
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Condition node representing a slot source being tested against `@s`.
|
|
6
|
+
*
|
|
7
|
+
* Expands to `execute if slots entity @s <slotSource>`, which counts the number of slots from
|
|
8
|
+
* the slot source that are present on the executing entity.
|
|
9
|
+
*/
|
|
10
|
+
export class SlotSourceConditionNode extends SingleConditionNode {
|
|
11
|
+
constructor(
|
|
12
|
+
sandstoneCore: SandstoneCore,
|
|
13
|
+
public slotSource: string,
|
|
14
|
+
) {
|
|
15
|
+
super(sandstoneCore)
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
getCondition(): unknown[] {
|
|
19
|
+
return ['slots', 'entity', '@s', this.slotSource]
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { NBTObject } from 'sandstone/arguments/nbt'
|
|
2
|
-
import type { DataPointPickClass,
|
|
2
|
+
import type { DataPointPickClass, SandstoneCore } from 'sandstone/core'
|
|
3
3
|
import type { DataPointClass, Score } from 'sandstone/variables'
|
|
4
4
|
import { SingleConditionNode } from '../condition'
|
|
5
5
|
|
|
@@ -29,19 +29,11 @@ export class DataPointEqualsConditionNode extends SingleConditionNode {
|
|
|
29
29
|
const { DataVariable, Variable, commands } = sandstoneCore.pack
|
|
30
30
|
const { execute } = commands
|
|
31
31
|
|
|
32
|
-
// Snapshot the user MCFunction body length before/after the entire side-effecting
|
|
33
|
-
// sequence — both the `data modify ... set from <source>` emitted by DataVariable (which
|
|
34
|
-
// copies the source into the anonymous storage) AND the `execute store result ... set
|
|
35
|
-
// value` written by `execute.store.result().run()`. They belong together: the first
|
|
36
|
-
// loads the data, the second overwrites it with `value`, and the subsequent
|
|
37
|
-
// `if score matches 0..` only makes sense after both have run.
|
|
38
|
-
const mcFunction = sandstoneCore.getCurrentMCFunctionOrThrow()
|
|
39
|
-
const before = mcFunction.body.length
|
|
40
32
|
const anon = DataVariable(this.dataPoint)
|
|
33
|
+
|
|
41
34
|
this.conditional = Variable()
|
|
35
|
+
|
|
42
36
|
execute.store.result(this.conditional).run(() => anon.set(this.value as unknown as DataPointClass))
|
|
43
|
-
const after = mcFunction.body.length
|
|
44
|
-
this.preNodes = mcFunction.body.splice(before, after - before)
|
|
45
37
|
}
|
|
46
38
|
|
|
47
39
|
getValue = (negated?: boolean) =>
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { Coordinates,
|
|
1
|
+
import type { Coordinates, MultipleEntitiesArgument, Registry } from 'sandstone/arguments'
|
|
2
2
|
import type { SandstoneCore } from 'sandstone/core/sandstoneCore'
|
|
3
3
|
import { coordinatesParser, targetParser } from 'sandstone/variables'
|
|
4
4
|
import type { ItemPredicateClass } from 'sandstone/variables/ItemPredicate'
|
|
5
|
+
import type { ItemSlotSource } from '../../../commands/implementations/world/item'
|
|
5
6
|
import { SingleConditionNode } from '../condition'
|
|
6
7
|
|
|
7
8
|
/** Item predicate for matching items in inventory slots. */
|
|
@@ -14,20 +15,23 @@ export type ItemPredicate = Registry['minecraft:item'] | ItemPredicateClass
|
|
|
14
15
|
* ```ts
|
|
15
16
|
* // Check if chest has any diamonds
|
|
16
17
|
* _.if(_.items.block(abs(0, 64, 0), 'container.*', 'minecraft:diamond'), () => { ... })
|
|
18
|
+
*
|
|
19
|
+
* // Check using an inline slot source
|
|
20
|
+
* _.if(_.items.block(abs(0, 64, 0), { type: 'minecraft:slot_range', slots: 'container.0' }, 'minecraft:diamond'), () => { ... })
|
|
17
21
|
* ```
|
|
18
22
|
*/
|
|
19
23
|
export class ItemsBlockConditionNode extends SingleConditionNode {
|
|
20
24
|
constructor(
|
|
21
25
|
sandstoneCore: SandstoneCore,
|
|
22
26
|
private sourcePos: Coordinates,
|
|
23
|
-
private
|
|
27
|
+
private slotSource: ItemSlotSource,
|
|
24
28
|
private itemPredicate: ItemPredicate,
|
|
25
29
|
) {
|
|
26
30
|
super(sandstoneCore)
|
|
27
31
|
}
|
|
28
32
|
|
|
29
33
|
getCondition() {
|
|
30
|
-
return ['items', 'block', coordinatesParser(this.sourcePos), this.
|
|
34
|
+
return ['items', 'block', coordinatesParser(this.sourcePos), this.slotSource, `${this.itemPredicate}`]
|
|
31
35
|
}
|
|
32
36
|
}
|
|
33
37
|
|
|
@@ -44,13 +48,57 @@ export class ItemsEntityConditionNode extends SingleConditionNode {
|
|
|
44
48
|
constructor(
|
|
45
49
|
sandstoneCore: SandstoneCore,
|
|
46
50
|
private source: MultipleEntitiesArgument,
|
|
47
|
-
private
|
|
51
|
+
private slotSource: ItemSlotSource,
|
|
48
52
|
private itemPredicate: ItemPredicate,
|
|
49
53
|
) {
|
|
50
54
|
super(sandstoneCore)
|
|
51
55
|
}
|
|
52
56
|
|
|
53
57
|
getCondition() {
|
|
54
|
-
return ['items', 'entity', targetParser(this.source), this.
|
|
58
|
+
return ['items', 'entity', targetParser(this.source), this.slotSource, `${this.itemPredicate}`]
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Condition node for counting slots from a slot source on a block entity.
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* ```ts
|
|
67
|
+
* _.if(_.slots.block(abs(0, 64, 0), 'container.*'), () => { ... })
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
export class SlotsBlockConditionNode extends SingleConditionNode {
|
|
71
|
+
constructor(
|
|
72
|
+
sandstoneCore: SandstoneCore,
|
|
73
|
+
private sourcePos: Coordinates,
|
|
74
|
+
private slotSource: ItemSlotSource,
|
|
75
|
+
) {
|
|
76
|
+
super(sandstoneCore)
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
getCondition() {
|
|
80
|
+
return ['slots', 'block', coordinatesParser(this.sourcePos), this.slotSource]
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Condition node for counting slots from a slot source on an entity.
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```ts
|
|
89
|
+
* _.if(_.slots.entity('@p', 'inventory.*'), () => { ... })
|
|
90
|
+
* ```
|
|
91
|
+
*/
|
|
92
|
+
export class SlotsEntityConditionNode extends SingleConditionNode {
|
|
93
|
+
constructor(
|
|
94
|
+
sandstoneCore: SandstoneCore,
|
|
95
|
+
private source: MultipleEntitiesArgument,
|
|
96
|
+
private slotSource: ItemSlotSource,
|
|
97
|
+
) {
|
|
98
|
+
super(sandstoneCore)
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
getCondition() {
|
|
102
|
+
return ['slots', 'entity', targetParser(this.source), this.slotSource]
|
|
55
103
|
}
|
|
56
104
|
}
|
package/src/pack/pack.ts
CHANGED
|
@@ -29,6 +29,7 @@ import type {
|
|
|
29
29
|
ChatTypeClassArguments,
|
|
30
30
|
DamageTypeClassArguments,
|
|
31
31
|
DataPointPickClass,
|
|
32
|
+
DecoratedPotPatternClassArguments,
|
|
32
33
|
DialogClassArguments,
|
|
33
34
|
EnchantmentClassArguments,
|
|
34
35
|
EnchantmentProviderClassArguments,
|
|
@@ -51,6 +52,7 @@ import type {
|
|
|
51
52
|
PredicateClassArguments,
|
|
52
53
|
RecipeClassArguments,
|
|
53
54
|
ShaderClassArguments,
|
|
55
|
+
SlotSourceClassArguments,
|
|
54
56
|
SoundEventArguments,
|
|
55
57
|
SoundsIndexArguments,
|
|
56
58
|
SulfurCubeArchetypeClassArguments,
|
|
@@ -77,6 +79,7 @@ import {
|
|
|
77
79
|
BlockStateDefinitionClass,
|
|
78
80
|
ChatTypeClass,
|
|
79
81
|
DamageTypeClass,
|
|
82
|
+
DecoratedPotPatternClass,
|
|
80
83
|
DialogClass,
|
|
81
84
|
EnchantmentClass,
|
|
82
85
|
EnchantmentProviderClass,
|
|
@@ -99,6 +102,7 @@ import {
|
|
|
99
102
|
RecipeClass,
|
|
100
103
|
SandstoneCore,
|
|
101
104
|
ShaderClass,
|
|
105
|
+
SlotSourceClass,
|
|
102
106
|
SoundEventClass,
|
|
103
107
|
SoundsIndexClass,
|
|
104
108
|
SulfurCubeArchetypeClass,
|
|
@@ -314,11 +318,11 @@ export class SandstonePack {
|
|
|
314
318
|
}
|
|
315
319
|
return {
|
|
316
320
|
datapack: {
|
|
317
|
-
packFormat:
|
|
321
|
+
packFormat: 112,
|
|
318
322
|
description: 'A Sandstone datapack',
|
|
319
323
|
},
|
|
320
324
|
resourcepack: {
|
|
321
|
-
packFormat:
|
|
325
|
+
packFormat: 93,
|
|
322
326
|
description: 'A Sandstone resource pack',
|
|
323
327
|
},
|
|
324
328
|
}
|
|
@@ -444,7 +448,7 @@ export class SandstonePack {
|
|
|
444
448
|
let pack = this.packTypes.get('datapack') as DataPack
|
|
445
449
|
|
|
446
450
|
if (!pack) {
|
|
447
|
-
const options = this.packOptions.datapack ?? { packFormat:
|
|
451
|
+
const options = this.packOptions.datapack ?? { packFormat: 112, description: 'A Sandstone datapack' }
|
|
448
452
|
pack = this.packTypes.set('datapack', new DataPack(false, options)).get('datapack') as DataPack
|
|
449
453
|
}
|
|
450
454
|
|
|
@@ -455,7 +459,7 @@ export class SandstonePack {
|
|
|
455
459
|
let pack = this.packTypes.get('resourcepack') as ResourcePack
|
|
456
460
|
|
|
457
461
|
if (!pack) {
|
|
458
|
-
const options = this.packOptions.resourcepack ?? { packFormat:
|
|
462
|
+
const options = this.packOptions.resourcepack ?? { packFormat: 93, description: 'A Sandstone resource pack' }
|
|
459
463
|
pack = this.packTypes
|
|
460
464
|
.set('resourcepack', new ResourcePack(options))
|
|
461
465
|
.get('resourcepack') as ResourcePack
|
|
@@ -465,12 +469,11 @@ export class SandstonePack {
|
|
|
465
469
|
}
|
|
466
470
|
|
|
467
471
|
setupLantern = () => {
|
|
468
|
-
const loadStatus = this.Objective.create('load.status', 'dummy', undefined, { useDefaultNamespace: false
|
|
472
|
+
const loadStatus = this.Objective.create('load.status', 'dummy', undefined, { useDefaultNamespace: false })
|
|
469
473
|
|
|
470
474
|
const privateInit = this.Tag('function', 'load:_private/init', [
|
|
471
475
|
this.MCFunction('load:_private/init', () => {
|
|
472
476
|
this.commands.comment('Reset scoreboards so packs can set values accurate for current load.')
|
|
473
|
-
this.commands.scoreboard.objectives.add(loadStatus.name, 'dummy')
|
|
474
477
|
loadStatus.reset()
|
|
475
478
|
}),
|
|
476
479
|
])
|
|
@@ -1122,6 +1125,15 @@ export class SandstonePack {
|
|
|
1122
1125
|
...options,
|
|
1123
1126
|
})
|
|
1124
1127
|
|
|
1128
|
+
DecoratedPotPattern = (name: string, decoratedPotPattern: DecoratedPotPatternClassArguments['json'], options?: Omit<Partial<DecoratedPotPatternClassArguments>, 'json'>) =>
|
|
1129
|
+
new DecoratedPotPatternClass(this.core, name, {
|
|
1130
|
+
json: decoratedPotPattern,
|
|
1131
|
+
creator: 'user',
|
|
1132
|
+
addToSandstoneCore: true,
|
|
1133
|
+
onConflict: conflictDefaults('decorated_pot_pattern') as DecoratedPotPatternClassArguments['onConflict'],
|
|
1134
|
+
...options,
|
|
1135
|
+
})
|
|
1136
|
+
|
|
1125
1137
|
ItemModifier = (name: string, itemModifier: ItemModifierClassArguments['json'], options?: Omit<Partial<ItemModifierClassArguments>, 'json'>) =>
|
|
1126
1138
|
new ItemModifierClass(this.core, name, {
|
|
1127
1139
|
json: itemModifier,
|
|
@@ -1162,6 +1174,15 @@ export class SandstonePack {
|
|
|
1162
1174
|
...options,
|
|
1163
1175
|
})
|
|
1164
1176
|
|
|
1177
|
+
SlotSource = (name: string, slotSource: SlotSourceClassArguments['json'], options?: Omit<Partial<SlotSourceClassArguments>, 'json'>) =>
|
|
1178
|
+
new SlotSourceClass(this.core, name, {
|
|
1179
|
+
json: slotSource,
|
|
1180
|
+
creator: 'user',
|
|
1181
|
+
addToSandstoneCore: true,
|
|
1182
|
+
onConflict: conflictDefaults('slot_source') as SlotSourceClassArguments['onConflict'],
|
|
1183
|
+
...options,
|
|
1184
|
+
})
|
|
1185
|
+
|
|
1165
1186
|
SulfurCubeArchetype = (name: string, sulfurCubeArchetype: SulfurCubeArchetypeClassArguments['json'], options?: Omit<Partial<SulfurCubeArchetypeClassArguments>, 'json'>) =>
|
|
1166
1187
|
new SulfurCubeArchetypeClass(this.core, name, {
|
|
1167
1188
|
json: sulfurCubeArchetype,
|
|
@@ -1356,7 +1377,7 @@ export class SandstonePack {
|
|
|
1356
1377
|
json,
|
|
1357
1378
|
creator: 'user',
|
|
1358
1379
|
addToSandstoneCore: true,
|
|
1359
|
-
onConflict: conflictDefaults('
|
|
1380
|
+
onConflict: conflictDefaults('blockstate') as BlockStateDefinitionArguments<JSON>['onConflict'],
|
|
1360
1381
|
...options,
|
|
1361
1382
|
})
|
|
1362
1383
|
}
|