Files
Applied-Energistics-2/src/main/java/appeng/recipes/handlers/InscriberRecipe.java
T
2020-06-29 02:15:31 +02:00

107 lines
2.6 KiB
Java

package appeng.recipes.handlers;
import net.minecraft.inventory.Inventory;
import net.minecraft.item.ItemStack;
import net.minecraft.recipe.*;
import net.minecraft.recipe.Ingredient;
import net.minecraft.recipe.Recipe;
import net.minecraft.util.collection.DefaultedList;
import net.minecraft.util.Identifier;
import net.minecraft.world.World;
import appeng.api.features.InscriberProcessType;
public class InscriberRecipe implements Recipe<Inventory> {
public static RecipeType<InscriberRecipe> TYPE;
private final Identifier id;
private final String group;
private final Ingredient middleInput;
private final Ingredient topOptional;
private final Ingredient bottomOptional;
private final ItemStack output;
private final InscriberProcessType processType;
public InscriberRecipe(Identifier id, String group, Ingredient middleInput, ItemStack output,
Ingredient topOptional, Ingredient bottomOptional, InscriberProcessType processType) {
this.id = id;
this.group = group;
this.middleInput = middleInput;
this.output = output;
this.topOptional = topOptional;
this.bottomOptional = bottomOptional;
this.processType = processType;
}
@Override
public boolean matches(Inventory inv, World worldIn) {
return false;
}
@Override
public ItemStack craft(Inventory inv) {
return this.output.copy();
}
@Override
public boolean canFit(int width, int height) {
return true;
}
@Override
public ItemStack getRecipeOutput() {
return output;
}
@Override
public Identifier getId() {
return id;
}
@Override
public RecipeSerializer<?> getSerializer() {
return InscriberRecipeSerializer.INSTANCE;
}
@Override
public RecipeType<?> getType() {
return TYPE;
}
@Override
public DefaultedList<Ingredient> getIngredients() {
DefaultedList<Ingredient> nonnulllist = DefaultedList.create();
nonnulllist.add(this.topOptional);
nonnulllist.add(this.middleInput);
nonnulllist.add(this.bottomOptional);
return nonnulllist;
}
public Ingredient getMiddleInput() {
return middleInput;
}
public ItemStack getOutput() {
return output;
}
public Ingredient getTopOptional() {
return topOptional;
}
public Ingredient getBottomOptional() {
return bottomOptional;
}
public InscriberProcessType getProcessType() {
return processType;
}
@Override
public String getGroup() {
return group;
}
}