Created new recipe serializer for charge items.
This commit is contained in:
@ -0,0 +1,33 @@
|
||||
package dev.micle.totemofreviving.item.crafting;
|
||||
|
||||
import dev.micle.totemofreviving.item.charge.ChargeItem;
|
||||
import dev.micle.totemofreviving.setup.ModRecipes;
|
||||
import net.minecraft.inventory.CraftingInventory;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.crafting.IRecipeSerializer;
|
||||
import net.minecraft.item.crafting.ShapedRecipe;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class ChargeRecipe extends ExtendedShapedRecipe {
|
||||
public ChargeRecipe(ShapedRecipe recipe) {
|
||||
super(recipe);
|
||||
}
|
||||
|
||||
@Override
|
||||
public IRecipeSerializer<?> getSerializer() {
|
||||
return ModRecipes.CHARGE_RECIPE.get();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean matches(CraftingInventory inventory, World world) {
|
||||
if (!ChargeItem.isEnabled(getResultItem())) {
|
||||
return false;
|
||||
}
|
||||
return getBaseRecipe().matches(inventory, world);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack assemble(CraftingInventory inventory) {
|
||||
return getBaseRecipe().getResultItem();
|
||||
}
|
||||
}
|
@ -1,5 +1,6 @@
|
||||
package dev.micle.totemofreviving.setup;
|
||||
|
||||
import dev.micle.totemofreviving.item.crafting.ChargeRecipe;
|
||||
import dev.micle.totemofreviving.item.crafting.ExtendedShapedRecipe;
|
||||
import dev.micle.totemofreviving.item.crafting.TotemRecipe;
|
||||
import net.minecraft.item.crafting.IRecipeSerializer;
|
||||
@ -8,6 +9,8 @@ import net.minecraftforge.fml.RegistryObject;
|
||||
public class ModRecipes {
|
||||
public static final RegistryObject<IRecipeSerializer<?>> TOTEM_RECIPE =
|
||||
Registration.RECIPE_SERIALIZERS.register("totem_recipe", () -> ExtendedShapedRecipe.Serializer.basic(TotemRecipe::new));
|
||||
public static final RegistryObject<IRecipeSerializer<?>> CHARGE_RECIPE =
|
||||
Registration.RECIPE_SERIALIZERS.register("charge_recipe", () -> ExtendedShapedRecipe.Serializer.basic(ChargeRecipe::new));
|
||||
|
||||
public static void register() {}
|
||||
}
|
||||
|
Reference in New Issue
Block a user