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.
- package/README.md +1 -1
- package/dist/_internal/index.d.ts +91 -16
- package/dist/_internal/index.js +1961 -306
- package/dist/_internal/index.js.map +1 -1
- package/dist/_internal/types/arguments/generated/_builtin/block_state_keys.d.ts +85 -1
- package/dist/_internal/types/arguments/generated/_builtin/block_states.d.ts +181 -1
- package/dist/_internal/types/arguments/generated/_dispatcher/block.d.ts +57 -21
- package/dist/_internal/types/arguments/generated/_dispatcher/block_entity.d.ts +5 -1
- package/dist/_internal/types/arguments/generated/_dispatcher/data_component_existence_predicate.d.ts +19 -0
- package/dist/_internal/types/arguments/generated/_dispatcher/resource.d.ts +24 -1
- package/dist/_internal/types/arguments/generated/_registry/advancements.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/atlases.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/attributes.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/block_definitions.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/block_entity_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/block_predicate_types.d.ts +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/cat_sound_variants.d.ts +4 -0
- package/dist/_internal/types/arguments/generated/_registry/chicken_sound_variants.d.ts +4 -0
- package/dist/_internal/types/arguments/generated/_registry/chunk_statuses.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/command_argument_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/cow_sound_variants.d.ts +4 -0
- package/dist/_internal/types/arguments/generated/_registry/damage_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/data_component_types.d.ts +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/game_events.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/game_rules.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/item_definitions.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/items.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/jukebox_songs.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/langs.d.ts +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/models.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/particle_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/pig_sound_variants.d.ts +4 -0
- package/dist/_internal/types/arguments/generated/_registry/recipes.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/sound_events.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/sounds.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/structures.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/sulfur_cube_archetypes.d.ts +4 -0
- package/dist/_internal/types/arguments/generated/_registry/tag_blocks.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_damage_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_entity_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/tag_items.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/test_environment_definition_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/textures.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/translation_keys.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/trigger_types.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/trim_patterns.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/villager_trades.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/wolf_sound_variants.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/wolf_variants.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_biomes.d.ts +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_features.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_placed_features.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/_registry/worldgen_world_presets.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/assets/atlas.d.ts +11 -2
- package/dist/_internal/types/arguments/generated/assets/block_state_definition.d.ts +25 -0
- package/dist/_internal/types/arguments/generated/assets/credits.d.ts +53 -0
- package/dist/_internal/types/arguments/generated/assets/equipment.d.ts +4 -5
- package/dist/_internal/types/arguments/generated/assets/item_definition.d.ts +29 -31
- package/dist/_internal/types/arguments/generated/assets/model.d.ts +126 -0
- package/dist/_internal/types/arguments/generated/assets/shader/program.d.ts +3 -0
- package/dist/_internal/types/arguments/generated/assets/sounds.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/assets/texture_meta.d.ts +168 -28
- package/dist/_internal/types/arguments/generated/data/advancement/predicate.d.ts +170 -56
- package/dist/_internal/types/arguments/generated/data/advancement/trigger.d.ts +18 -0
- package/dist/_internal/types/arguments/generated/data/advancement.d.ts +7 -4
- package/dist/_internal/types/arguments/generated/data/chat_type.d.ts +7 -2
- package/dist/_internal/types/arguments/generated/data/decorated_pot_pattern.d.ts +8 -0
- package/dist/_internal/types/arguments/generated/data/dialog/input.d.ts +21 -0
- package/dist/_internal/types/arguments/generated/data/dialog.d.ts +5 -5
- package/dist/_internal/types/arguments/generated/data/enchantment/effect_component.d.ts +25 -25
- package/dist/_internal/types/arguments/generated/data/gametest/test_environment.d.ts +19 -1
- package/dist/_internal/types/arguments/generated/data/gametest.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/data/item_modifier.d.ts +2 -1
- package/dist/_internal/types/arguments/generated/data/loot/condition.d.ts +84 -86
- package/dist/_internal/types/arguments/generated/data/loot/function.d.ts +261 -232
- package/dist/_internal/types/arguments/generated/data/loot.d.ts +10 -13
- package/dist/_internal/types/arguments/generated/data/predicate.d.ts +2 -1
- package/dist/_internal/types/arguments/generated/data/recipe.d.ts +58 -1
- package/dist/_internal/types/arguments/generated/data/slot_source.d.ts +91 -0
- package/dist/_internal/types/arguments/generated/data/structure.d.ts +59 -0
- package/dist/_internal/types/arguments/generated/data/sulfur_cube_archetype.d.ts +84 -0
- package/dist/_internal/types/arguments/generated/data/trim.d.ts +7 -1
- package/dist/_internal/types/arguments/generated/data/util.d.ts +7 -0
- package/dist/_internal/types/arguments/generated/data/variants/painting.d.ts +2 -2
- package/dist/_internal/types/arguments/generated/data/villager_trade.d.ts +4 -4
- package/dist/_internal/types/arguments/generated/data/worldgen/biome.d.ts +18 -0
- package/dist/_internal/types/arguments/generated/data/worldgen/carver.d.ts +24 -0
- package/dist/_internal/types/arguments/generated/data/worldgen/density_function.d.ts +28 -2
- package/dist/_internal/types/arguments/generated/data/worldgen/dimension/biome_source.d.ts +4 -0
- package/dist/_internal/types/arguments/generated/data/worldgen/dimension.d.ts +2 -2
- package/dist/_internal/types/arguments/generated/data/worldgen/feature/block_predicate.d.ts +7 -1
- package/dist/_internal/types/arguments/generated/data/worldgen/feature/tree.d.ts +54 -6
- package/dist/_internal/types/arguments/generated/data/worldgen/feature.d.ts +285 -115
- package/dist/_internal/types/arguments/generated/data/worldgen/material_condition.d.ts +93 -0
- package/dist/_internal/types/arguments/generated/data/worldgen/material_rule.d.ts +35 -0
- package/dist/_internal/types/arguments/generated/data/worldgen/noise_settings.d.ts +6 -2
- package/dist/_internal/types/arguments/generated/data/worldgen/processor_list.d.ts +18 -2
- package/dist/_internal/types/arguments/generated/data/worldgen/structure.d.ts +72 -2
- package/dist/_internal/types/arguments/generated/data/worldgen/structure_set.d.ts +4 -4
- package/dist/_internal/types/arguments/generated/dispatcher.d.ts +5 -3
- package/dist/_internal/types/arguments/generated/pack.d.ts +7 -0
- package/dist/_internal/types/arguments/generated/registry-sets.d.ts +9 -4
- package/dist/_internal/types/arguments/generated/registry.d.ts +15 -5
- package/dist/_internal/types/arguments/generated/resource-paths.d.ts +15 -0
- package/dist/_internal/types/arguments/generated/resources.d.ts +13 -1
- package/dist/_internal/types/arguments/generated/util/effect.d.ts +105 -3
- package/dist/_internal/types/arguments/generated/util/particle.d.ts +72 -1
- package/dist/_internal/types/arguments/generated/util/slot.d.ts +1 -84
- package/dist/_internal/types/arguments/generated/util/text.d.ts +191 -1
- package/dist/_internal/types/arguments/generated/util.d.ts +1 -0
- package/dist/_internal/types/arguments/generated/world/block/decorated_pot.d.ts +3 -5
- package/dist/_internal/types/arguments/generated/world/block/furnace.d.ts +3 -0
- package/dist/_internal/types/arguments/generated/world/block/potent_sulfur.d.ts +10 -0
- package/dist/_internal/types/arguments/generated/world/block/test_instance_block.d.ts +46 -1
- package/dist/_internal/types/arguments/generated/world/block/vault.d.ts +59 -0
- package/dist/_internal/types/arguments/generated/world/component/block.d.ts +6 -0
- package/dist/_internal/types/arguments/generated/world/component/item.d.ts +21 -6
- package/dist/_internal/types/arguments/generated/world/component/predicate.d.ts +4 -1
- package/dist/_internal/types/arguments/generated/world/component.d.ts +2 -1
- package/dist/_internal/types/arguments/generated/world/entity/boat.d.ts +15 -2
- package/dist/_internal/types/arguments/generated/world/entity/display.d.ts +34 -0
- package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/chicken.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/cow.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/saddled.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/tamable.d.ts +1 -1
- package/dist/_internal/types/arguments/generated/world/entity/mob/copper_golem.d.ts +3 -3
- package/dist/_internal/types/arguments/generated/world/entity/mob/happy_ghast.d.ts +5 -0
- package/dist/_internal/types/arguments/generated/world/entity/mob/player.d.ts +21 -0
- package/dist/_internal/types/arguments/generated/world/entity/mob/shulker.d.ts +2 -2
- package/dist/_internal/types/arguments/generated/world/entity/mob/slime.d.ts +20 -2
- package/dist/_internal/types/arguments/generated/world/entity/mob.d.ts +50 -7
- package/dist/_internal/types/arguments/generated/world/item/map.d.ts +12 -0
- package/dist/_internal/types/arguments/generated/world/item/shield.d.ts +26 -0
- package/dist/_internal/types/core/resources/datapack/decoratedPotPattern.d.ts +24 -0
- package/dist/_internal/types/core/resources/datapack/index.d.ts +3 -0
- package/dist/_internal/types/core/resources/datapack/slotSource.d.ts +24 -0
- package/dist/_internal/types/core/resources/datapack/sulfurCubeArchetype.d.ts +24 -0
- package/dist/_internal/types/pack/pack.d.ts +5 -2
- package/dist/_internal/types/variables/ResolveNBT.d.ts +1 -1
- package/dist/browser/sandstone.esm.js +1961 -306
- 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/core/index.d.ts +1 -1
- package/dist/exports/core/index.js +1 -1
- package/dist/exports/index.d.ts +1 -1
- package/dist/exports/index.js +1 -1
- package/package.json +2 -2
- package/src/arguments/generated/_builtin/block_state_keys.ts +112 -0
- package/src/arguments/generated/_builtin/block_states.ts +208 -0
- package/src/arguments/generated/_dispatcher/block.ts +68 -20
- package/src/arguments/generated/_dispatcher/block_entity.ts +5 -0
- package/src/arguments/generated/_dispatcher/data_component_existence_predicate.ts +34 -0
- package/src/arguments/generated/_dispatcher/resource.ts +29 -0
- package/src/arguments/generated/_registry/advancements.ts +71 -0
- package/src/arguments/generated/_registry/atlases.ts +0 -2
- package/src/arguments/generated/_registry/attributes.ts +5 -0
- package/src/arguments/generated/_registry/block_definitions.ts +28 -0
- package/src/arguments/generated/_registry/block_entity_types.ts +1 -1
- package/src/arguments/generated/_registry/block_predicate_types.ts +1 -0
- package/src/arguments/generated/_registry/block_types.ts +3 -1
- package/src/arguments/generated/_registry/blocks.ts +28 -0
- package/src/arguments/generated/_registry/cat_sound_variants.ts +11 -0
- package/src/arguments/generated/_registry/chicken_sound_variants.ts +11 -0
- package/src/arguments/generated/_registry/command_argument_types.ts +1 -1
- package/src/arguments/generated/_registry/cow_sound_variants.ts +11 -0
- package/src/arguments/generated/_registry/damage_types.ts +1 -0
- package/src/arguments/generated/_registry/data_component_types.ts +1 -0
- package/src/arguments/generated/_registry/entity_sub_predicate_types.ts +25 -6
- package/src/arguments/generated/_registry/entity_types.ts +1 -0
- package/src/arguments/generated/_registry/game_events.ts +1 -0
- package/src/arguments/generated/_registry/item_definitions.ts +31 -0
- package/src/arguments/generated/_registry/items.ts +31 -0
- package/src/arguments/generated/_registry/jukebox_songs.ts +1 -0
- package/src/arguments/generated/_registry/langs.ts +5 -0
- package/src/arguments/generated/_registry/loot_tables.ts +29 -0
- package/src/arguments/generated/_registry/models.ts +294 -42
- package/src/arguments/generated/_registry/particle_types.ts +8 -0
- package/src/arguments/generated/_registry/pig_sound_variants.ts +12 -0
- package/src/arguments/generated/_registry/recipes.ts +70 -0
- package/src/arguments/generated/_registry/sound_events.ts +66 -0
- package/src/arguments/generated/_registry/sounds.ts +307 -0
- package/src/arguments/generated/_registry/structures.ts +10 -0
- package/src/arguments/generated/_registry/sulfur_cube_archetypes.ts +21 -0
- package/src/arguments/generated/_registry/tag_blocks.ts +18 -1
- 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 +17 -0
- package/src/arguments/generated/_registry/test_environment_definition_types.ts +1 -0
- package/src/arguments/generated/_registry/textures.ts +233 -42
- package/src/arguments/generated/_registry/translation_keys.ts +316 -72
- package/src/arguments/generated/_registry/villager_trades.ts +1 -0
- package/src/arguments/generated/_registry/worldgen_biomes.ts +1 -0
- package/src/arguments/generated/_registry/worldgen_configured_features.ts +5 -0
- package/src/arguments/generated/_registry/worldgen_density_function_types.ts +1 -1
- package/src/arguments/generated/_registry/worldgen_features.ts +5 -2
- package/src/arguments/generated/_registry/worldgen_noises.ts +1 -0
- package/src/arguments/generated/_registry/worldgen_placed_features.ts +4 -0
- package/src/arguments/generated/_registry/worldgen_world_presets.ts +1 -0
- package/src/arguments/generated/assets/atlas.ts +14 -2
- package/src/arguments/generated/assets/block_state_definition.ts +30 -0
- package/src/arguments/generated/assets/credits.ts +56 -0
- package/src/arguments/generated/assets/equipment.ts +4 -5
- package/src/arguments/generated/assets/item_definition.ts +31 -31
- package/src/arguments/generated/assets/model.ts +133 -0
- package/src/arguments/generated/assets/shader/program.ts +4 -0
- package/src/arguments/generated/assets/sounds.ts +1 -1
- package/src/arguments/generated/assets/texture_meta.ts +174 -28
- package/src/arguments/generated/data/advancement/predicate.ts +218 -58
- package/src/arguments/generated/data/advancement/trigger.ts +20 -0
- package/src/arguments/generated/data/advancement.ts +8 -4
- package/src/arguments/generated/data/chat_type.ts +8 -2
- package/src/arguments/generated/data/decorated_pot_pattern.ts +8 -0
- package/src/arguments/generated/data/dialog/input.ts +22 -0
- package/src/arguments/generated/data/dialog.ts +5 -5
- package/src/arguments/generated/data/enchantment/effect_component.ts +25 -25
- package/src/arguments/generated/data/gametest/test_environment.ts +24 -0
- package/src/arguments/generated/data/gametest.ts +1 -2
- package/src/arguments/generated/data/item_modifier.ts +3 -1
- package/src/arguments/generated/data/loot/condition.ts +129 -112
- package/src/arguments/generated/data/loot/function.ts +362 -280
- package/src/arguments/generated/data/loot.ts +14 -13
- package/src/arguments/generated/data/predicate.ts +3 -1
- package/src/arguments/generated/data/recipe.ts +66 -1
- package/src/arguments/generated/data/slot_source.ts +119 -0
- package/src/arguments/generated/data/structure.ts +63 -0
- package/src/arguments/generated/data/sulfur_cube_archetype.ts +92 -0
- package/src/arguments/generated/data/trim.ts +9 -1
- package/src/arguments/generated/data/util.ts +8 -0
- package/src/arguments/generated/data/variants/painting.ts +2 -2
- package/src/arguments/generated/data/villager_trade.ts +4 -4
- package/src/arguments/generated/data/worldgen/biome.ts +24 -0
- package/src/arguments/generated/data/worldgen/carver.ts +28 -0
- package/src/arguments/generated/data/worldgen/density_function.ts +29 -1
- package/src/arguments/generated/data/worldgen/dimension/biome_source.ts +5 -0
- package/src/arguments/generated/data/worldgen/dimension.ts +4 -2
- package/src/arguments/generated/data/worldgen/feature/block_predicate.ts +8 -0
- package/src/arguments/generated/data/worldgen/feature/tree.ts +58 -4
- package/src/arguments/generated/data/worldgen/feature.ts +320 -124
- package/src/arguments/generated/data/worldgen/material_condition.ts +119 -0
- package/src/arguments/generated/data/worldgen/material_rule.ts +52 -0
- package/src/arguments/generated/data/worldgen/noise_settings.ts +7 -2
- package/src/arguments/generated/data/worldgen/processor_list.ts +24 -1
- package/src/arguments/generated/data/worldgen/structure.ts +79 -2
- package/src/arguments/generated/data/worldgen/structure_set.ts +13 -4
- package/src/arguments/generated/dispatcher.ts +11 -4
- package/src/arguments/generated/pack.ts +8 -0
- package/src/arguments/generated/registry-sets.ts +18 -8
- package/src/arguments/generated/registry.ts +27 -4
- package/src/arguments/generated/resource-paths.ts +3 -0
- package/src/arguments/generated/resources.ts +6 -0
- package/src/arguments/generated/util/effect.ts +107 -3
- package/src/arguments/generated/util/particle.ts +80 -0
- package/src/arguments/generated/util/slot.ts +1 -103
- package/src/arguments/generated/util/text.ts +207 -0
- package/src/arguments/generated/util.ts +2 -0
- package/src/arguments/generated/world/block/decorated_pot.ts +3 -5
- package/src/arguments/generated/world/block/furnace.ts +4 -0
- package/src/arguments/generated/world/block/potent_sulfur.ts +11 -0
- package/src/arguments/generated/world/block/test_instance_block.ts +48 -1
- package/src/arguments/generated/world/block/vault.ts +62 -0
- package/src/arguments/generated/world/component/block.ts +7 -0
- package/src/arguments/generated/world/component/item.ts +28 -5
- package/src/arguments/generated/world/component/predicate.ts +6 -0
- package/src/arguments/generated/world/component.ts +4 -1
- package/src/arguments/generated/world/entity/boat.ts +18 -1
- package/src/arguments/generated/world/entity/display.ts +35 -0
- package/src/arguments/generated/world/entity/mob/breedable/chicken.ts +1 -1
- package/src/arguments/generated/world/entity/mob/breedable/cow.ts +1 -1
- package/src/arguments/generated/world/entity/mob/breedable/saddled.ts +1 -1
- package/src/arguments/generated/world/entity/mob/breedable/tamable.ts +1 -1
- package/src/arguments/generated/world/entity/mob/copper_golem.ts +3 -3
- package/src/arguments/generated/world/entity/mob/happy_ghast.ts +6 -0
- package/src/arguments/generated/world/entity/mob/player.ts +21 -0
- package/src/arguments/generated/world/entity/mob/shulker.ts +2 -2
- package/src/arguments/generated/world/entity/mob/slime.ts +22 -2
- package/src/arguments/generated/world/entity/mob.ts +53 -7
- package/src/arguments/generated/world/item/map.ts +14 -0
- package/src/arguments/generated/world/item/shield.ts +27 -0
- package/src/core/resources/datapack/decoratedPotPattern.ts +47 -0
- package/src/core/resources/datapack/index.ts +3 -0
- package/src/core/resources/datapack/slotSource.ts +47 -0
- package/src/core/resources/datapack/sulfurCubeArchetype.ts +47 -0
- package/src/pack/pack.ts +33 -0
- package/src/sandstone.ts +24 -0
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import type { LootConditionOf } from "./loot/condition.js";
|
|
2
|
+
import type { LootFunctionOf } from "./loot/function.js";
|
|
3
|
+
import type { SlotSource } from "./slot_source.js";
|
|
1
4
|
import type { NumberProvider } from "./util.js";
|
|
2
|
-
import type { SymbolLootCondition, SymbolLootFunction } from "../dispatcher.js";
|
|
3
5
|
import type { Registry } from "../registry.js";
|
|
4
|
-
import type { SlotSource } from "../util/slot.js";
|
|
5
6
|
import type { RootNBT } from "../../nbt.js";
|
|
6
7
|
import type { LootTableClass, NBTInt } from "../../../../index.js";
|
|
7
8
|
export type BlockEntityTarget = 'block_entity';
|
|
@@ -23,19 +24,11 @@ export type ItemPoolEntry = ({
|
|
|
23
24
|
name: Registry['minecraft:item'];
|
|
24
25
|
} & SingletonPoolEntry);
|
|
25
26
|
export type ItemStackTarget = 'tool';
|
|
26
|
-
export type LootCondition =
|
|
27
|
-
[S in Extract<Registry['minecraft:loot_condition_type'], string>]?: ({
|
|
28
|
-
condition: S;
|
|
29
|
-
} & (S extends keyof SymbolLootCondition ? SymbolLootCondition[S] : RootNBT));
|
|
30
|
-
}[Registry['minecraft:loot_condition_type']])>;
|
|
27
|
+
export type LootCondition = LootConditionOf<Registry['minecraft:loot_condition_type']>;
|
|
31
28
|
export type LootConditionType = ('alternative' | 'block_state_property' | 'damage_source_properties' | 'entity_properties' | 'entity_scores' | 'inverted' | 'killed_by_player' | 'location_check' | 'match_tool' | 'random_chance' | 'random_chance_with_looting' | 'reference' | 'survives_explosion' | 'table_bonus' | 'time_check' | 'weather_check');
|
|
32
|
-
export type LootContextType = ('empty' | 'chest' | 'command' | 'selector' | 'fishing' | 'entity' | 'gift' | 'barter' | 'advancement_reward' | 'advancement_entity' | 'advancement_location' | 'generic' | 'block' | 'block_use' | 'equipment' | 'archaeology' | 'vault' | 'shearing' | 'enchanted_damage' | 'enchanted_item' | 'enchanted_location' | 'enchanted_entity' | 'hit_block' | 'block_interact' | 'entity_interact');
|
|
29
|
+
export type LootContextType = ('empty' | 'chest' | 'command' | 'selector' | 'fishing' | 'entity' | 'gift' | 'barter' | 'advancement_reward' | 'advancement_entity' | 'advancement_location' | 'generic' | 'block' | 'block_use' | 'equipment' | 'archaeology' | 'vault' | 'shearing' | 'enchanted_damage' | 'enchanted_item' | 'enchanted_location' | 'enchanted_entity' | 'hit_block' | 'block_interact' | 'entity_interact' | 'villager_trade' | 'command_slot_source');
|
|
33
30
|
export type LootEntryType = ('alternatives' | 'dynamic' | 'empty' | 'group' | 'item' | 'loot_table' | 'sequence' | 'tag');
|
|
34
|
-
export type LootFunction =
|
|
35
|
-
[S in Extract<Registry['minecraft:loot_function_type'], string>]?: ({
|
|
36
|
-
function: S;
|
|
37
|
-
} & (S extends keyof SymbolLootFunction ? SymbolLootFunction[S] : RootNBT));
|
|
38
|
-
}[Registry['minecraft:loot_function_type']])>;
|
|
31
|
+
export type LootFunction = LootFunctionOf<Registry['minecraft:loot_function_type'], Registry['minecraft:loot_condition_type']>;
|
|
39
32
|
export type LootFunctionType = ('apply_bonus' | 'copy_name' | 'copy_nbt' | 'copy_state' | 'enchant_randomly' | 'enchant_with_levels' | 'explosion_decay' | 'exploration_map' | 'fill_player_head' | 'furnace_smelt' | 'limit_count' | 'looting_enchant' | 'set_attributes' | 'set_contents' | 'set_count' | 'set_damage' | 'set_loot_table' | 'set_lore' | 'set_name' | 'set_nbt' | 'set_stew_effect');
|
|
40
33
|
export type LootPool = {
|
|
41
34
|
rolls: NumberProvider;
|
|
@@ -81,6 +74,8 @@ export type LootTable = {
|
|
|
81
74
|
* - HitBlock(`hit_block`)
|
|
82
75
|
* - BlockInteract(`block_interact`)
|
|
83
76
|
* - EntityInteract(`entity_interact`)
|
|
77
|
+
* - VillagerTrade(`villager_trade`)
|
|
78
|
+
* - CommandSlotSource(`command_slot_source`)
|
|
84
79
|
*/
|
|
85
80
|
type?: (LootContextType | `minecraft:${LootContextType}`);
|
|
86
81
|
pools?: Array<LootPool>;
|
|
@@ -95,6 +90,8 @@ export type LootTable = {
|
|
|
95
90
|
export type LootTablePoolEntry = ({
|
|
96
91
|
value: ((Registry['minecraft:loot_table'] | LootTableClass) | LootTable);
|
|
97
92
|
} & SingletonPoolEntry);
|
|
93
|
+
export type NonReferenceLootCondition = LootConditionOf<Registry['minecraft:loot_condition_type']>;
|
|
94
|
+
export type NonReferenceLootFunction = LootFunctionOf<Registry['minecraft:loot_function_type'], Registry['minecraft:loot_condition_type']>;
|
|
98
95
|
export type SingletonPoolEntry = ({
|
|
99
96
|
/**
|
|
100
97
|
* Value:
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
import type { LootCondition } from "./loot.js";
|
|
1
|
+
import type { LootCondition, NonReferenceLootCondition } from "./loot.js";
|
|
2
|
+
export type NonReferencePredicate = (NonReferenceLootCondition | Array<NonReferenceLootCondition>);
|
|
2
3
|
export type Predicate = (LootCondition | Array<LootCondition>);
|
|
@@ -2,7 +2,7 @@ import type { MinMaxBounds } from "./util.js";
|
|
|
2
2
|
import type { Registry } from "../registry.js";
|
|
3
3
|
import type { FireworkShape } from "../world/component/item.js";
|
|
4
4
|
import type { ItemStack, ItemStackTemplate } from "../world/item.js";
|
|
5
|
-
import type { PatternKeys, StringSmallerThan4 } from "../../index.js";
|
|
5
|
+
import type { CRAFTING_INGREDIENT, PatternKeys, StringSmallerThan4 } from "../../index.js";
|
|
6
6
|
import type { NBTFloat, NBTInt, NBTList, TagClass, TrimPatternClass } from "../../../../index.js";
|
|
7
7
|
export type CookingBookCategory = ('food' | 'blocks' | 'misc');
|
|
8
8
|
export type CookingBookInfo = {
|
|
@@ -77,6 +77,9 @@ export type CraftingImbue = (NotificationInfo & CraftingBookInfo & {
|
|
|
77
77
|
material: Ingredient;
|
|
78
78
|
result: ItemStackTemplate;
|
|
79
79
|
});
|
|
80
|
+
export type CraftingIngredients = ({
|
|
81
|
+
[Key in Extract<CRAFTING_INGREDIENT, string>]?: Ingredient;
|
|
82
|
+
});
|
|
80
83
|
export type CraftingShaped<P1 extends string = string, P2 extends string = string, P3 extends string = string> = (NotificationInfo & CraftingBookInfo & {
|
|
81
84
|
pattern: [
|
|
82
85
|
StringSmallerThan4<P1>,
|
|
@@ -271,6 +274,9 @@ export type CraftingTransmute = (NotificationInfo & CraftingBookInfo & {
|
|
|
271
274
|
*/
|
|
272
275
|
result: (ItemStack | Registry['minecraft:item']);
|
|
273
276
|
});
|
|
277
|
+
export type FireworkShapeIngredients = ({
|
|
278
|
+
[Key in Extract<FireworkShape, string>]?: Ingredient;
|
|
279
|
+
});
|
|
274
280
|
/**
|
|
275
281
|
* *either*
|
|
276
282
|
*
|
|
@@ -284,6 +290,12 @@ export type Ingredient = (NBTList<Registry['minecraft:item'], {
|
|
|
284
290
|
leftExclusive: false;
|
|
285
291
|
min: 1;
|
|
286
292
|
}> | (Registry['minecraft:item'] | `#${Registry['minecraft:tag/item']}` | TagClass<'item'>));
|
|
293
|
+
export type IngredientItem = {
|
|
294
|
+
item: Registry['minecraft:item'];
|
|
295
|
+
};
|
|
296
|
+
export type IngredientTag = {
|
|
297
|
+
tag: (Registry['minecraft:tag/item']);
|
|
298
|
+
};
|
|
287
299
|
export type IngredientValue = ({
|
|
288
300
|
item: Registry['minecraft:item'];
|
|
289
301
|
} | {
|
|
@@ -300,11 +312,39 @@ export type NotificationInfo = {
|
|
|
300
312
|
*/
|
|
301
313
|
show_notification?: boolean;
|
|
302
314
|
};
|
|
315
|
+
export type OptionalSmithingIngredients = {
|
|
316
|
+
/**
|
|
317
|
+
* Ingredient specifying an item to be trimmed. (eg. `"#minecraft:trimmable_armor"`)
|
|
318
|
+
*/
|
|
319
|
+
base?: Ingredient;
|
|
320
|
+
/**
|
|
321
|
+
* Material that will be used. (eg. `"#minecraft:trim_materials"`)
|
|
322
|
+
*/
|
|
323
|
+
addition?: Ingredient;
|
|
324
|
+
/**
|
|
325
|
+
* Template item that will be used for the pattern.
|
|
326
|
+
*/
|
|
327
|
+
template?: Ingredient;
|
|
328
|
+
};
|
|
303
329
|
export type Recipe = NonNullable<({
|
|
304
330
|
[S in Extract<Registry['minecraft:recipe_serializer'], string>]?: ({
|
|
305
331
|
type: S;
|
|
306
332
|
} & (S extends keyof SymbolRecipeSerializer ? SymbolRecipeSerializer[S] : SymbolRecipeSerializer<'%unknown'>));
|
|
307
333
|
}[Registry['minecraft:recipe_serializer']])>;
|
|
334
|
+
export type RequiredSmithingIngredients = {
|
|
335
|
+
/**
|
|
336
|
+
* Ingredient specifying an item to be trimmed. (eg. `{ "tag": "minecraft:trimmable_armor" }`)
|
|
337
|
+
*/
|
|
338
|
+
base: Ingredient;
|
|
339
|
+
/**
|
|
340
|
+
* Material that will be used. (eg. `{ "tag": "minecraft:trim_materials" }`)
|
|
341
|
+
*/
|
|
342
|
+
addition: Ingredient;
|
|
343
|
+
/**
|
|
344
|
+
* Template item that will be used for the pattern.
|
|
345
|
+
*/
|
|
346
|
+
template: Ingredient;
|
|
347
|
+
};
|
|
308
348
|
export type Smelting = (NotificationInfo & CookingBookInfo & {
|
|
309
349
|
ingredient: Ingredient;
|
|
310
350
|
result: ItemStackTemplate;
|
|
@@ -316,6 +356,20 @@ export type Smithing = {
|
|
|
316
356
|
addition: IngredientValue;
|
|
317
357
|
result: ItemResult;
|
|
318
358
|
};
|
|
359
|
+
export type SmithingIngredients = {
|
|
360
|
+
/**
|
|
361
|
+
* Ingredient specifying an item to be trimmed. (eg. `"#minecraft:trimmable_armor"`)
|
|
362
|
+
*/
|
|
363
|
+
base?: Ingredient;
|
|
364
|
+
/**
|
|
365
|
+
* Material that will be used. (eg. `"#minecraft:trim_materials"`)
|
|
366
|
+
*/
|
|
367
|
+
addition?: Ingredient;
|
|
368
|
+
/**
|
|
369
|
+
* Template item that will be used for the pattern.
|
|
370
|
+
*/
|
|
371
|
+
template?: Ingredient;
|
|
372
|
+
};
|
|
319
373
|
export type SmithingTransform = (NotificationInfo & {
|
|
320
374
|
/**
|
|
321
375
|
* Ingredient specifying an item to be transformed.
|
|
@@ -335,6 +389,9 @@ export type SmithingTransform = (NotificationInfo & {
|
|
|
335
389
|
*/
|
|
336
390
|
template?: Ingredient;
|
|
337
391
|
});
|
|
392
|
+
export type SmithingTransformResult = {
|
|
393
|
+
item: Registry['minecraft:item'];
|
|
394
|
+
};
|
|
338
395
|
export type SmithingTrim = (NotificationInfo & {
|
|
339
396
|
/**
|
|
340
397
|
* Ingredient specifying an item to be trimmed.
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import type { ItemPredicate } from "./advancement/predicate.js";
|
|
2
|
+
import type { BlockEntityTarget, EntityTarget } from "./loot.js";
|
|
3
|
+
import type { ContainerComponents } from "./loot/function.js";
|
|
4
|
+
import type { Registry } from "../registry.js";
|
|
5
|
+
import type { ENTITY_SLOTS } from "../../index.js";
|
|
6
|
+
import type { NBTObject, RootNBT } from "../../nbt.js";
|
|
7
|
+
import type { LiteralUnion, NBTInt, SlotSourceClass } from "../../../../index.js";
|
|
8
|
+
export type ContentsSlotSource<S extends NBTObject> = {
|
|
9
|
+
/**
|
|
10
|
+
* The slots to search.
|
|
11
|
+
*/
|
|
12
|
+
slot_source: SlotSourceOf<S>;
|
|
13
|
+
/**
|
|
14
|
+
* If an item targeted by `slot_source` has this container component, selects all items inside.
|
|
15
|
+
*
|
|
16
|
+
* Value:
|
|
17
|
+
*
|
|
18
|
+
* - Container(`container`)
|
|
19
|
+
* - BundleContents(`bundle_contents`)
|
|
20
|
+
* - ChargedProjectiles(`charged_projectiles`)
|
|
21
|
+
*/
|
|
22
|
+
component: (ContainerComponents | `minecraft:${ContainerComponents}`);
|
|
23
|
+
};
|
|
24
|
+
export type FilterSlotSource<S extends NBTObject> = {
|
|
25
|
+
slot_source: SlotSourceOf<S>;
|
|
26
|
+
item_filter: ItemPredicate;
|
|
27
|
+
};
|
|
28
|
+
export type GroupSlotSource<S extends NBTObject> = {
|
|
29
|
+
terms: Array<SlotSourceOf<S>>;
|
|
30
|
+
};
|
|
31
|
+
export type LimitCountSlotSource<S extends NBTObject> = {
|
|
32
|
+
slot_source: SlotSourceOf<S>;
|
|
33
|
+
/**
|
|
34
|
+
* Value:
|
|
35
|
+
* Range: 1..
|
|
36
|
+
*/
|
|
37
|
+
limit: NBTInt<{
|
|
38
|
+
min: 1;
|
|
39
|
+
}>;
|
|
40
|
+
};
|
|
41
|
+
export type RangeSlotSource = ({
|
|
42
|
+
/**
|
|
43
|
+
* Value:
|
|
44
|
+
* *either*
|
|
45
|
+
*
|
|
46
|
+
*
|
|
47
|
+
*
|
|
48
|
+
* *or*
|
|
49
|
+
*
|
|
50
|
+
* *item 1*
|
|
51
|
+
*/
|
|
52
|
+
source: (EntityTarget | BlockEntityTarget);
|
|
53
|
+
} & {
|
|
54
|
+
slots: LiteralUnion<ENTITY_SLOTS>;
|
|
55
|
+
});
|
|
56
|
+
export type SlotSource = SlotSourceOf<Registry['minecraft:slot_source_type']>;
|
|
57
|
+
export type SlotSourceOf<S extends NBTObject> = (TypedSlotSourceOf<S> | Array<TypedSlotSourceOf<S>>);
|
|
58
|
+
export type TypedSlotSourceOf<S extends NBTObject> = ({
|
|
59
|
+
[S in keyof SlotSourceDispatcherMap<S>]?: ({
|
|
60
|
+
type: S;
|
|
61
|
+
} & (S extends keyof SlotSourceDispatcherMap<S> ? SlotSourceDispatcherMap<S>[S] : RootNBT));
|
|
62
|
+
}[keyof SlotSourceDispatcherMap<S>]);
|
|
63
|
+
type SlotSourceDispatcherMap<S extends NBTObject> = {
|
|
64
|
+
'contents': SlotSourceContents<S>;
|
|
65
|
+
'minecraft:contents': SlotSourceContents<S>;
|
|
66
|
+
'empty': SlotSourceEmpty<S>;
|
|
67
|
+
'minecraft:empty': SlotSourceEmpty<S>;
|
|
68
|
+
'filtered': SlotSourceFiltered<S>;
|
|
69
|
+
'minecraft:filtered': SlotSourceFiltered<S>;
|
|
70
|
+
'group': SlotSourceGroup<S>;
|
|
71
|
+
'minecraft:group': SlotSourceGroup<S>;
|
|
72
|
+
'limit_slots': SlotSourceLimitSlots<S>;
|
|
73
|
+
'minecraft:limit_slots': SlotSourceLimitSlots<S>;
|
|
74
|
+
'reference': SlotSourceReference<S>;
|
|
75
|
+
'minecraft:reference': SlotSourceReference<S>;
|
|
76
|
+
'slot_range': SlotSourceSlotRange<S>;
|
|
77
|
+
'minecraft:slot_range': SlotSourceSlotRange<S>;
|
|
78
|
+
};
|
|
79
|
+
type SlotSourceKeys = keyof SlotSourceDispatcherMap<NBTObject>;
|
|
80
|
+
type SlotSourceFallback<S extends NBTObject> = (SlotSourceContents<S> | SlotSourceEmpty<S> | SlotSourceFiltered<S> | SlotSourceGroup<S> | SlotSourceLimitSlots<S> | SlotSourceReference<S> | SlotSourceSlotRange<S>);
|
|
81
|
+
export type SlotSourceContents<S extends NBTObject> = ContentsSlotSource<S>;
|
|
82
|
+
export type SlotSourceEmpty<S extends NBTObject> = Record<string, never>;
|
|
83
|
+
export type SlotSourceFiltered<S extends NBTObject> = FilterSlotSource<S>;
|
|
84
|
+
export type SlotSourceGroup<S extends NBTObject> = GroupSlotSource<S>;
|
|
85
|
+
export type SlotSourceLimitSlots<S extends NBTObject> = LimitCountSlotSource<S>;
|
|
86
|
+
export type SlotSourceReference<S extends NBTObject> = {
|
|
87
|
+
name: (`${string}:${string}` | SlotSourceClass);
|
|
88
|
+
};
|
|
89
|
+
export type SlotSourceSlotRange<S extends NBTObject> = RangeSlotSource;
|
|
90
|
+
export type SymbolSlotSource<S extends NBTObject, CASE extends 'map' | 'keys' | '%fallback' | '%none' | '%unknown' = 'map'> = CASE extends 'map' ? SlotSourceDispatcherMap<S> : CASE extends 'keys' ? SlotSourceKeys : CASE extends '%fallback' ? SlotSourceFallback<S> : never;
|
|
91
|
+
export {};
|
|
@@ -10,6 +10,65 @@ export type BlockPalette = ({
|
|
|
10
10
|
*/
|
|
11
11
|
palettes: Array<Array<BlockState>>;
|
|
12
12
|
});
|
|
13
|
+
export type Palette = {
|
|
14
|
+
palette: Array<BlockState>;
|
|
15
|
+
};
|
|
16
|
+
export type RandomizedPalette = {
|
|
17
|
+
/**
|
|
18
|
+
* Sets of different block states used in the structure, a random palette gets selected based on coordinates.
|
|
19
|
+
*/
|
|
20
|
+
palettes: Array<Array<BlockState>>;
|
|
21
|
+
};
|
|
22
|
+
export type StructureBlock = {
|
|
23
|
+
/**
|
|
24
|
+
* Value:
|
|
25
|
+
* Range: 0..
|
|
26
|
+
*/
|
|
27
|
+
state: NBTInt<{
|
|
28
|
+
min: 0;
|
|
29
|
+
}>;
|
|
30
|
+
/**
|
|
31
|
+
* Value:
|
|
32
|
+
* List length range: 3
|
|
33
|
+
*/
|
|
34
|
+
pos: NBTList<NBTInt<{
|
|
35
|
+
min: 0;
|
|
36
|
+
}>, {
|
|
37
|
+
leftExclusive: false;
|
|
38
|
+
rightExclusive: false;
|
|
39
|
+
min: 3;
|
|
40
|
+
max: 3;
|
|
41
|
+
}>;
|
|
42
|
+
nbt?: SymbolBlock<'%fallback'>;
|
|
43
|
+
};
|
|
44
|
+
export type StructureEntity = {
|
|
45
|
+
/**
|
|
46
|
+
* Value:
|
|
47
|
+
* List length range: 3
|
|
48
|
+
*/
|
|
49
|
+
pos: NBTList<(NBTDouble<{
|
|
50
|
+
leftExclusive: false;
|
|
51
|
+
min: 0;
|
|
52
|
+
}> | number), {
|
|
53
|
+
leftExclusive: false;
|
|
54
|
+
rightExclusive: false;
|
|
55
|
+
min: 3;
|
|
56
|
+
max: 3;
|
|
57
|
+
}>;
|
|
58
|
+
/**
|
|
59
|
+
* Value:
|
|
60
|
+
* List length range: 3
|
|
61
|
+
*/
|
|
62
|
+
blockPos: NBTList<NBTInt<{
|
|
63
|
+
min: 0;
|
|
64
|
+
}>, {
|
|
65
|
+
leftExclusive: false;
|
|
66
|
+
rightExclusive: false;
|
|
67
|
+
min: 3;
|
|
68
|
+
max: 3;
|
|
69
|
+
}>;
|
|
70
|
+
nbt: AnyEntity;
|
|
71
|
+
};
|
|
13
72
|
export type StructureNBT = ({
|
|
14
73
|
/**
|
|
15
74
|
* [Data version](https://minecraft.wiki/w/Data_version).
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import type { SoundEventRef } from "./util.js";
|
|
2
|
+
import type { FloatProvider } from "./worldgen.js";
|
|
3
|
+
import type { Registry } from "../registry.js";
|
|
4
|
+
import type { ModernAttributeModifier } from "../world/entity/mob.js";
|
|
5
|
+
import type { DamageTypeClass, NBTFloat, NBTInt, TagClass } from "../../../../index.js";
|
|
6
|
+
export type AttributeEntry = ({
|
|
7
|
+
/**
|
|
8
|
+
* Attribute type to modify.
|
|
9
|
+
*/
|
|
10
|
+
attribute: Registry['minecraft:attribute'];
|
|
11
|
+
} & ModernAttributeModifier);
|
|
12
|
+
export type ContactDamage = {
|
|
13
|
+
damage_type: (Registry['minecraft:damage_type'] | DamageTypeClass);
|
|
14
|
+
amount: FloatProvider<NBTFloat<{
|
|
15
|
+
leftExclusive: false;
|
|
16
|
+
min: 0;
|
|
17
|
+
}>>;
|
|
18
|
+
/**
|
|
19
|
+
* Whether the damage is attributed to the sulfur cube.
|
|
20
|
+
*/
|
|
21
|
+
attribute_to_source: boolean;
|
|
22
|
+
};
|
|
23
|
+
export type ExplosionData = {
|
|
24
|
+
/**
|
|
25
|
+
* The fuse time in ticks when ignited. \
|
|
26
|
+
* When ignited by an explosion, the fuse will be a random value between `explosion_fuse / 8` and `3 * explosion_fuse / 8`.
|
|
27
|
+
*
|
|
28
|
+
* Value:
|
|
29
|
+
* Range: 1..
|
|
30
|
+
*/
|
|
31
|
+
fuse: NBTInt<{
|
|
32
|
+
min: 1;
|
|
33
|
+
}>;
|
|
34
|
+
/**
|
|
35
|
+
* The explosion power.
|
|
36
|
+
*
|
|
37
|
+
* Value:
|
|
38
|
+
* Range: 0..
|
|
39
|
+
*/
|
|
40
|
+
power: NBTInt<{
|
|
41
|
+
min: 0;
|
|
42
|
+
}>;
|
|
43
|
+
/**
|
|
44
|
+
* Whether the explosion causes fire.
|
|
45
|
+
*/
|
|
46
|
+
causes_fire: boolean;
|
|
47
|
+
};
|
|
48
|
+
export type KnockbackModifiers = {
|
|
49
|
+
/**
|
|
50
|
+
* The horizontal power of the knockback.
|
|
51
|
+
*/
|
|
52
|
+
horizontal_power: NBTFloat;
|
|
53
|
+
/**
|
|
54
|
+
* The vertical power of the knockback.
|
|
55
|
+
*/
|
|
56
|
+
vertical_power: NBTFloat;
|
|
57
|
+
};
|
|
58
|
+
export type SoundSettings = {
|
|
59
|
+
hit_sound: SoundEventRef;
|
|
60
|
+
push_sound: SoundEventRef;
|
|
61
|
+
/**
|
|
62
|
+
* Minimum impact speed required to trigger the sound.
|
|
63
|
+
*/
|
|
64
|
+
push_sound_impulse_threshold: NBTFloat;
|
|
65
|
+
/**
|
|
66
|
+
* Cooldown in seconds for the sound effect.
|
|
67
|
+
*/
|
|
68
|
+
push_sound_cooldown: NBTFloat;
|
|
69
|
+
};
|
|
70
|
+
export type SulfurCubeArchetype = {
|
|
71
|
+
items: ((Registry['minecraft:item'] | `#${Registry['minecraft:tag/item']}` | TagClass<'item'>) | Array<Registry['minecraft:item']>);
|
|
72
|
+
/**
|
|
73
|
+
* Defaults to `false`.
|
|
74
|
+
*/
|
|
75
|
+
buoyant?: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* When present, sulfur cube with this archetype will explode when ignited.
|
|
78
|
+
*/
|
|
79
|
+
explosion?: ExplosionData;
|
|
80
|
+
contact_damage?: ContactDamage;
|
|
81
|
+
knockback_modifiers: KnockbackModifiers;
|
|
82
|
+
attribute_modifiers: Array<AttributeEntry>;
|
|
83
|
+
sound_settings: SoundSettings;
|
|
84
|
+
};
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import type { Registry } from "../registry.js";
|
|
2
2
|
import type { Text } from "../util/text.js";
|
|
3
3
|
export type ArmorMaterial = ('leather' | 'chainmail' | 'iron' | 'gold' | 'diamond' | 'netherite' | 'turtle');
|
|
4
|
+
export type OldTrimMaterialOverrides = ({
|
|
5
|
+
[Key in Extract<(ArmorMaterial | `minecraft:${ArmorMaterial}`), string>]?: string;
|
|
6
|
+
});
|
|
4
7
|
export type TrimMaterial = {
|
|
5
8
|
/**
|
|
6
|
-
*
|
|
9
|
+
* Permutation key which will be used in the resource pack.
|
|
7
10
|
*/
|
|
8
11
|
asset_name: string;
|
|
9
12
|
/**
|
|
@@ -17,6 +20,9 @@ export type TrimMaterial = {
|
|
|
17
20
|
[Key in Extract<Registry['minecraft:equipment'], string>]?: string;
|
|
18
21
|
});
|
|
19
22
|
};
|
|
23
|
+
export type TrimMaterialOverrides = ({
|
|
24
|
+
[Key in Extract<Registry['minecraft:equipment'], string>]?: string;
|
|
25
|
+
});
|
|
20
26
|
export type TrimPattern = {
|
|
21
27
|
/**
|
|
22
28
|
* ID of the pattern that will be used in the resource pack as an overlay on the armor.
|
|
@@ -183,6 +183,13 @@ export type UniformNumberProvider = {
|
|
|
183
183
|
min?: NumberProvider;
|
|
184
184
|
max?: NumberProvider;
|
|
185
185
|
};
|
|
186
|
+
export type WeightedSoundEvent = {
|
|
187
|
+
sound_id: (`${string}:${string}` | '');
|
|
188
|
+
/**
|
|
189
|
+
* Range in blocks. If the player is further than this range from the source of the sound, the sound will be inaudible. If omitted, the sound will have a variable range.
|
|
190
|
+
*/
|
|
191
|
+
range?: NBTFloat;
|
|
192
|
+
};
|
|
186
193
|
type NbtProviderDispatcherMap = {
|
|
187
194
|
'context': NbtProviderContext;
|
|
188
195
|
'minecraft:context': NbtProviderContext;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { NonReferenceItemModifier } from "./item_modifier.js";
|
|
2
|
+
import type { NonReferencePredicate } from "./predicate.js";
|
|
3
3
|
import type { NumberProvider } from "./util.js";
|
|
4
4
|
import type { Registry } from "../registry.js";
|
|
5
5
|
import type { ItemStackTemplate, TradeCost } from "../world/item.js";
|
|
@@ -25,7 +25,7 @@ export type VillagerTrade = {
|
|
|
25
25
|
* Some modifiers can affect the price through the `additional_trade_cost` transient component. \
|
|
26
26
|
* The `additional_trade_cost` component is not saved on the offered item.
|
|
27
27
|
*/
|
|
28
|
-
given_item_modifiers?: Array<
|
|
28
|
+
given_item_modifiers?: Array<NonReferenceItemModifier>;
|
|
29
29
|
/**
|
|
30
30
|
* Maximum number of uses of this trade before the villager has to restock. Defaults to `4`. \
|
|
31
31
|
* Clamps to a positive integer.
|
|
@@ -45,7 +45,7 @@ export type VillagerTrade = {
|
|
|
45
45
|
* Check whether the trade should be offered by the merchant. \
|
|
46
46
|
* Does **not** support the `reference` predicate.
|
|
47
47
|
*/
|
|
48
|
-
merchant_predicate?:
|
|
48
|
+
merchant_predicate?: NonReferencePredicate;
|
|
49
49
|
/**
|
|
50
50
|
* If the offered enchanted book has the specified enchantments, the price will be affected by doubling the `additional_trade_cost` transient component.
|
|
51
51
|
*/
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import type { SoundEventRef } from "../util.js";
|
|
2
2
|
import type { PositionalEnvironmentAttributeMap } from "./attribute.js";
|
|
3
3
|
import type { CarverRef } from "./carver.js";
|
|
4
|
+
import type { CarveStep } from "./.js";
|
|
4
5
|
import type { PlacedFeatureRef } from "./feature/placement.js";
|
|
5
6
|
import type { Registry } from "../../registry.js";
|
|
6
7
|
import type { StringRGB } from "../../util/color.js";
|
|
8
|
+
import type { Particle } from "../../util/particle.js";
|
|
7
9
|
import type { NBTDouble, NBTFloat, NBTInt, NBTList, TagClass } from "../../../../../index.js";
|
|
8
10
|
export type Biome = {
|
|
9
11
|
attributes?: PositionalEnvironmentAttributeMap;
|
|
@@ -82,6 +84,19 @@ export type BiomeMusic = ({
|
|
|
82
84
|
*/
|
|
83
85
|
replace_current_music?: boolean;
|
|
84
86
|
});
|
|
87
|
+
export type BiomeParticle = {
|
|
88
|
+
options: Particle;
|
|
89
|
+
/**
|
|
90
|
+
* Value:
|
|
91
|
+
* Range: 0..1
|
|
92
|
+
*/
|
|
93
|
+
probability: NBTFloat<{
|
|
94
|
+
leftExclusive: false;
|
|
95
|
+
rightExclusive: false;
|
|
96
|
+
min: 0;
|
|
97
|
+
max: 1;
|
|
98
|
+
}>;
|
|
99
|
+
};
|
|
85
100
|
export type BiomeSoundAdditions = {
|
|
86
101
|
sound: SoundEventRef;
|
|
87
102
|
/**
|
|
@@ -95,6 +110,9 @@ export type BiomeSoundAdditions = {
|
|
|
95
110
|
max: 1;
|
|
96
111
|
}>;
|
|
97
112
|
};
|
|
113
|
+
export type CarversPerStep = ({
|
|
114
|
+
[Key in Extract<CarveStep, string>]?: (Array<CarverRef> | (Registry['minecraft:worldgen/configured_carver'] | `#${string}:${string}` | TagClass<'worldgen/configured_carver'>));
|
|
115
|
+
});
|
|
98
116
|
export type GrassColorModifier = ('none' | 'dark_forest' | 'swamp');
|
|
99
117
|
export type MobCategory = ('monster' | 'creature' | 'ambient' | 'axolotls' | 'underground_water_creature' | 'water_creature' | 'water_ambient' | 'misc');
|
|
100
118
|
export type MobSpawnCost = {
|
|
@@ -21,6 +21,24 @@ export type CanyonShape = {
|
|
|
21
21
|
vertical_radius_default_factor: NBTFloat;
|
|
22
22
|
vertical_radius_center_factor: NBTFloat;
|
|
23
23
|
};
|
|
24
|
+
export type CarverConfigBase<S = undefined> = ({
|
|
25
|
+
/**
|
|
26
|
+
* Value:
|
|
27
|
+
* Range: 0..1
|
|
28
|
+
*/
|
|
29
|
+
probability: NBTFloat<{
|
|
30
|
+
leftExclusive: false;
|
|
31
|
+
rightExclusive: false;
|
|
32
|
+
min: 0;
|
|
33
|
+
max: 1;
|
|
34
|
+
}>;
|
|
35
|
+
replaceable?: (Array<Registry['minecraft:block']> | (Registry['minecraft:block'] | `#${Registry['minecraft:tag/block']}` | TagClass<'block'>));
|
|
36
|
+
} & {
|
|
37
|
+
y: HeightProvider;
|
|
38
|
+
yScale: FloatProvider<NBTFloat>;
|
|
39
|
+
lava_level: VerticalAnchor;
|
|
40
|
+
debug_settings?: CarverDebugSettings;
|
|
41
|
+
} & (S extends keyof SymbolCarverConfig ? SymbolCarverConfig[S] : RootNBT));
|
|
24
42
|
export type CarverDebugSettings = {
|
|
25
43
|
debug_mode?: boolean;
|
|
26
44
|
air_state: BlockState;
|
|
@@ -60,6 +78,12 @@ export type ConfiguredCarver = NonNullable<({
|
|
|
60
78
|
} & (S extends keyof SymbolCarverConfig ? SymbolCarverConfig[S] : RootNBT));
|
|
61
79
|
};
|
|
62
80
|
}[Registry['minecraft:worldgen/carver']])>;
|
|
81
|
+
export type ModernCarverConfig = {
|
|
82
|
+
y: HeightProvider;
|
|
83
|
+
yScale: FloatProvider<NBTFloat>;
|
|
84
|
+
lava_level: VerticalAnchor;
|
|
85
|
+
debug_settings?: CarverDebugSettings;
|
|
86
|
+
};
|
|
63
87
|
type CarverConfigDispatcherMap = {
|
|
64
88
|
'canyon': CarverConfigCanyon;
|
|
65
89
|
'minecraft:canyon': CarverConfigCanyon;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Registry } from "../../registry.js";
|
|
2
2
|
import type { RootNBT } from "../../../nbt.js";
|
|
3
|
-
import type { NBTFloat, NBTInt } from "../../../../../index.js";
|
|
3
|
+
import type { NBTFloat, NBTInt, NBTList } from "../../../../../index.js";
|
|
4
4
|
export type Clamp = {
|
|
5
5
|
input: DensityFunction;
|
|
6
6
|
min: NoiseRange;
|
|
@@ -35,6 +35,29 @@ export type FindTopSurface = {
|
|
|
35
35
|
min: 1;
|
|
36
36
|
}>;
|
|
37
37
|
};
|
|
38
|
+
export type InvervalSelect = {
|
|
39
|
+
input: DensityFunctionRef;
|
|
40
|
+
/**
|
|
41
|
+
* Must have exactly one fewer element than `functions`.
|
|
42
|
+
*
|
|
43
|
+
* Value:
|
|
44
|
+
* List length range: 1..
|
|
45
|
+
*/
|
|
46
|
+
thresholds: NBTList<NoiseRange, {
|
|
47
|
+
leftExclusive: false;
|
|
48
|
+
min: 1;
|
|
49
|
+
}>;
|
|
50
|
+
/**
|
|
51
|
+
* Must have exactly one more element than `thresholds`.
|
|
52
|
+
*
|
|
53
|
+
* Value:
|
|
54
|
+
* List length range: 2..
|
|
55
|
+
*/
|
|
56
|
+
functions: NBTList<DensityFunctionRef, {
|
|
57
|
+
leftExclusive: false;
|
|
58
|
+
min: 1;
|
|
59
|
+
}>;
|
|
60
|
+
};
|
|
38
61
|
export type Noise = {
|
|
39
62
|
noise: Registry['minecraft:worldgen/noise'];
|
|
40
63
|
xz_scale: NBTFloat;
|
|
@@ -162,6 +185,8 @@ type DensityFunctionDispatcherMap = {
|
|
|
162
185
|
'minecraft:half_negative': DensityFunctionHalfNegative;
|
|
163
186
|
'interpolated': DensityFunctionInterpolated;
|
|
164
187
|
'minecraft:interpolated': DensityFunctionInterpolated;
|
|
188
|
+
'interval_select': DensityFunctionIntervalSelect;
|
|
189
|
+
'minecraft:interval_select': DensityFunctionIntervalSelect;
|
|
165
190
|
'invert': DensityFunctionInvert;
|
|
166
191
|
'minecraft:invert': DensityFunctionInvert;
|
|
167
192
|
'max': DensityFunctionMax;
|
|
@@ -202,7 +227,7 @@ type DensityFunctionDispatcherMap = {
|
|
|
202
227
|
'minecraft:y_clamped_gradient': DensityFunctionYClampedGradient;
|
|
203
228
|
};
|
|
204
229
|
type DensityFunctionKeys = keyof DensityFunctionDispatcherMap;
|
|
205
|
-
type DensityFunctionFallback = (DensityFunctionAbs | DensityFunctionAdd | DensityFunctionBlendDensity | DensityFunctionCache2d | DensityFunctionCacheAllInCell | DensityFunctionCacheOnce | DensityFunctionClamp | DensityFunctionConstant | DensityFunctionCube | DensityFunctionFindTopSurface | DensityFunctionFlatCache | DensityFunctionHalfNegative | DensityFunctionInterpolated | DensityFunctionInvert | DensityFunctionMax | DensityFunctionMin | DensityFunctionMul | DensityFunctionNoise | DensityFunctionOldBlendedNoise | DensityFunctionQuarterNegative | DensityFunctionRangeChoice | DensityFunctionShift | DensityFunctionShiftA | DensityFunctionShiftB | DensityFunctionShiftedNoise | DensityFunctionSlide | DensityFunctionSpline | DensityFunctionSquare | DensityFunctionSqueeze | DensityFunctionTerrainShaperSpline | DensityFunctionWeirdScaledSampler | DensityFunctionYClampedGradient);
|
|
230
|
+
type DensityFunctionFallback = (DensityFunctionAbs | DensityFunctionAdd | DensityFunctionBlendDensity | DensityFunctionCache2d | DensityFunctionCacheAllInCell | DensityFunctionCacheOnce | DensityFunctionClamp | DensityFunctionConstant | DensityFunctionCube | DensityFunctionFindTopSurface | DensityFunctionFlatCache | DensityFunctionHalfNegative | DensityFunctionInterpolated | DensityFunctionIntervalSelect | DensityFunctionInvert | DensityFunctionMax | DensityFunctionMin | DensityFunctionMul | DensityFunctionNoise | DensityFunctionOldBlendedNoise | DensityFunctionQuarterNegative | DensityFunctionRangeChoice | DensityFunctionShift | DensityFunctionShiftA | DensityFunctionShiftB | DensityFunctionShiftedNoise | DensityFunctionSlide | DensityFunctionSpline | DensityFunctionSquare | DensityFunctionSqueeze | DensityFunctionTerrainShaperSpline | DensityFunctionWeirdScaledSampler | DensityFunctionYClampedGradient);
|
|
206
231
|
type DensityFunctionAbs = OneArgument;
|
|
207
232
|
type DensityFunctionAdd = TwoArguments;
|
|
208
233
|
type DensityFunctionBlendDensity = OneArgument;
|
|
@@ -216,6 +241,7 @@ type DensityFunctionFindTopSurface = FindTopSurface;
|
|
|
216
241
|
type DensityFunctionFlatCache = OneArgument;
|
|
217
242
|
type DensityFunctionHalfNegative = OneArgument;
|
|
218
243
|
type DensityFunctionInterpolated = OneArgument;
|
|
244
|
+
type DensityFunctionIntervalSelect = InvervalSelect;
|
|
219
245
|
type DensityFunctionInvert = OneArgument;
|
|
220
246
|
type DensityFunctionMax = TwoArguments;
|
|
221
247
|
type DensityFunctionMin = TwoArguments;
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import type { Registry } from "../../../registry.js";
|
|
2
2
|
import type { RootNBT } from "../../../../nbt.js";
|
|
3
3
|
import type { NBTDouble, NBTFloat, NBTInt, NBTList, NBTLong, TagClass } from "../../../../../../index.js";
|
|
4
|
+
export type BiomeNoiseEntry = {
|
|
5
|
+
biome: Registry['minecraft:worldgen/biome'];
|
|
6
|
+
parameters: ClimateParameters;
|
|
7
|
+
};
|
|
4
8
|
export type BiomeSource = NonNullable<({
|
|
5
9
|
[S in Extract<Registry['minecraft:worldgen/biome_source'], string>]?: ({
|
|
6
10
|
type: S;
|
|
@@ -74,9 +74,9 @@ export type DimensionType = {
|
|
|
74
74
|
*/
|
|
75
75
|
cardinal_light?: CardinalLightType;
|
|
76
76
|
/**
|
|
77
|
-
*
|
|
77
|
+
* Defining what blocks keep fire infinitely burning.
|
|
78
78
|
*/
|
|
79
|
-
infiniburn: (`#${Registry['minecraft:tag/block']}` | TagClass<'block'>);
|
|
79
|
+
infiniburn: ((Registry['minecraft:block'] | `#${Registry['minecraft:tag/block']}` | TagClass<'block'>) | Array<Registry['minecraft:block']>);
|
|
80
80
|
/**
|
|
81
81
|
* The minimum height in which blocks can exist.
|
|
82
82
|
*
|