ActuallyAdditions/src/main/java/de/ellpeck/actuallyadditions/common/recipe/EnchBookConversion.java

36 lines
1.4 KiB
Java
Raw Normal View History

2020-09-09 16:49:01 +02:00
package de.ellpeck.actuallyadditions.common.recipe;
import java.util.Map;
import com.google.common.collect.ImmutableMap;
import de.ellpeck.actuallyadditions.api.ActuallyAdditionsAPI;
import de.ellpeck.actuallyadditions.api.internal.IAtomicReconstructor;
import de.ellpeck.actuallyadditions.api.recipe.LensConversionRecipe;
import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.Ingredient;
import net.minecraft.util.math.BlockPos;
public class EnchBookConversion extends LensConversionRecipe {
2019-02-27 19:53:05 +01:00
public EnchBookConversion() {
super(Ingredient.fromItem(Items.ENCHANTED_BOOK), ItemStack.EMPTY, 155000, ActuallyAdditionsAPI.lensDefaultConversion);
}
@Override
public void transformHook(ItemStack stack, IBlockState state, BlockPos pos, IAtomicReconstructor tile) {
2019-05-02 09:10:29 +02:00
for (Map.Entry<Enchantment, Integer> e : EnchantmentHelper.getEnchantments(stack).entrySet()) {
2019-02-27 19:53:05 +01:00
ItemStack book = new ItemStack(Items.ENCHANTED_BOOK);
Map<Enchantment, Integer> ench = ImmutableMap.of(e.getKey(), e.getValue());
EnchantmentHelper.setEnchantments(ench, book);
Block.spawnAsEntity(tile.getWorldObject(), pos, book);
}
}
}