Mechanical Extruder
Кинетический блок для создания предметов и блоков из соседних жидкостей/блоков. Предназначен для использования в модпаках.
Версия 1.21.1-2.x Требует Mechanicals Lib
Поддержка версий
- 1.21.1: Поддерживается. Документация актуальна для этой версии.
- 1.20.1: Только критические исправления
Andesite Extruder
- Кинетический блок.
- Функция фильтрации при конфликте рецептов.
- Shift + ПКМ для извлечения содержимого.
- Автоматизированное извлечение.
Brass Extruder
- Может потреблять исходные блоки.
Рецепты экструдирования
- Интеграция с JEI.
- Кастомные требования для рецептов.
BlockState
Блок
{
"blocks": "minecraft:water"
},
Блок с состоянием
{
"blocks": "minecraft:furnace",
"state": {
"lit": "true"
}
}
Входные BlockStates
"blockIngredients": {
"first": {
"blocks": "minecraft:water"
},
"second": {
"blocks": "minecraft:lava"
}
}
BlockStates катализатора
"catalyst": {
"blocks": "minecraft:obsidian"
}
Требуемые удары (опционально)
"requiredBonks": 10
- Определяет необходимое количество ударов.
Требование Brass Extruder (опционально)
"advanced":"true"
- Рецепт требует Brass Extruder.
Потребление блоков (рецепты для Brass Extruder)
"consumeBlocks": {
"first": false,
"second": true
},
Требования рецепта
- MinY/MaxY
"requirements": [
{
"type": "mechanicals:min_y",
"value": 0
},
{
"type": "mechanicals:max_y",
"value": 60
}
],
- MinSpeed/MaxSpeed
"requirements": [
{
"type": "mechanicals:max_speed",
"value": 4.0
}
],
- Биом
"requirements": [
{
"type": "mechanicals:biome",
"value": "minecraft:plains"
}
],
- Тег биома
"requirements": [
{
"type": "mechanicals:biome_tag",
"value": "minecraft:is_nether"
}
],
KubeJS
- Удаление всех рецептов:
ServerEvents.recipes(event => {
event.remove({ type: 'create_mechanical_extruder:extruding' })
})
- Вероятностный выход:
Output.of('minecraft:clay', 0.5)
Output.of('4xminecraft:clay', 0.5)
- BlockPredicate:
BlockPredicate.of('minecraft:sand')
- RecipeRequirement:
RecipeRequirement.minY(int)
RecipeRequirement.maxY(int)
RecipeRequirement.minSpeed(float)
RecipeRequirement.maxSpeed(float)
RecipeRequirement.biome(string)
RecipeRequirement.biomeTag(string)
- Добавление рецептов:
ServerEvents.recipes(event => {
event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:dirt'),[BlockPredicate.of('minecraft:lava'),BlockPredicate.of('minecraft:stone')])
.catalyst('minecraft:clay')
})
- Примеры:
// Минимальный
event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:redstone_block'),[BlockPredicate.of('minecraft:lava'),BlockPredicate.of('minecraft:stone')])
// Катализатор
event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:dirt'),[BlockPredicate.of('minecraft:lava'),BlockPredicate.of('minecraft:stone')])
.catalyst('minecraft:clay')
// Удары
event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:sand'),[BlockPredicate.of('minecraft:lava'),BlockPredicate.of('minecraft:stone')])
.requiredBonks(10)
// Потребление блоков
event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:birch_planks'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')])
.catalyst(BlockPredicate.of("minecraft:dirt"))
.consumeBlocks(true)
.advanced(true)
// Требования к биому
event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:iron_block'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')]).catalyst(BlockPredicate.of("minecraft:dirt"))
.requirements(
[
RecipeRequirement.biome("minecraft:plains")
]
);
// Комбинированные требования
event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:emerald_block'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')])
.catalyst(BlockPredicate.of("minecraft:dirt"))
.advanced(true)
.consumeBlocks(true)
.requirements(
[
RecipeRequirement.minSpeed(16.0),
RecipeRequirement.minY(10),
RecipeRequirement.maxY(12),
RecipeRequirement.biomeTag("minecraft:is_nether")
]
);