Search in sources :

Example 1 with DrinkRecipe

use of cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.DrinkRecipe in project FoodCraft-Reloaded by LasmGratel.

the class TileEntityDrinkMachine method startProgress.

@Override
public void startProgress() {
    DrinkRecipe recipe = RecipeManager.getInstance().getRecipeNullable(DrinkRecipe.class, new RecipeInput(itemStackHandler.getStackInSlot(0).getItem()));
    if (recipe != null) {
        FoodCraftReloaded.getLogger().debug("Drink machine: Found recipe " + recipe.getOutput().<FluidStack>first().getFluid().getName());
        fluidOutput = recipe.getOutput().first();
        output = recipe.getOutput().second();
        itemStackHandler.getStackInSlot(0).splitStack(1);
    }
}
Also used : RecipeInput(cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.RecipeInput) FluidStack(net.minecraftforge.fluids.FluidStack) DrinkRecipe(cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.DrinkRecipe)

Example 2 with DrinkRecipe

use of cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.DrinkRecipe in project FoodCraft-Reloaded by LasmGratel.

the class RecipeLoader method loadDrinkRecipes.

@Load(LoaderState.AVAILABLE)
public void loadDrinkRecipes() {
    FruitEnumLoader fruitLoader = FoodCraftReloadedMod.getProxy().getLoaderManager().getLoader(FruitEnumLoader.class).get();
    VegetableEnumLoader vegetableLoader = FoodCraftReloadedMod.getProxy().getLoaderManager().getLoader(VegetableEnumLoader.class).get();
    for (FruitType fruitType : FruitType.values()) {
        RecipeManager.getInstance().addRecipe(new DrinkRecipe(fruitLoader.getInstanceMap(ItemFruit.class).get(fruitType), new FluidStack(fruitLoader.getInstance(FluidFruitJuice.class, fruitType), 1000)));
        GameRegistry.addShapedRecipe(new ResourceLocation(FoodCraftReloadedMod.MODID, NameBuilder.buildRegistryName(fruitType.toString(), "sapling")), new ResourceLocation(FoodCraftReloadedMod.MODID, "sapling"), new ItemStack(fruitLoader.getInstanceMap(BlockFruitSapling.class).get(fruitType)).setStackDisplayName(Translator.format("item.foodcraftreloaded.sapling", Translator.format(NameBuilder.buildUnlocalizedName("item.fruit", fruitType.toString())))), "XXX", "XSX", "XXX", 'X', fruitLoader.getInstanceMap(ItemFruit.class).get(fruitType), 'S', "treeSapling");
        GameRegistry.addShapelessRecipe(new ResourceLocation(FoodCraftReloadedMod.MODID, NameBuilder.buildRegistryName(fruitType.toString(), "icecream")), new ResourceLocation(FoodCraftReloadedMod.MODID, "icecream"), new ItemStack(fruitLoader.getInstanceMap(ItemFruitIcecream.class).get(fruitType)), OreIngredient.fromItem(FCRItems.ORIGINAL_ICE_CREAM), OreIngredient.fromItem(fruitLoader.getInstanceMap(ItemFruitJuice.class).get(fruitType)));
        GameRegistry.addShapelessRecipe(new ResourceLocation(FoodCraftReloadedMod.MODID, NameBuilder.buildRegistryName("cake", "fruit", fruitType.toString())), new ResourceLocation(FoodCraftReloadedMod.MODID, "cake"), new ItemStack(fruitLoader.getInstanceMap(ItemFruitCake.class).get(fruitType)), OreIngredient.fromItem(fruitLoader.getInstanceMap(ItemFruitJuice.class).get(fruitType)), OreIngredient.fromItem(Items.CAKE));
    }
    for (KitchenKnifeType kitchenKnifeType : KitchenKnifeType.values()) {
        GameRegistry.addShapedRecipe(new ResourceLocation(FoodCraftReloadedMod.MODID, NameBuilder.buildRegistryName("kitchen", "knife", kitchenKnifeType.toString())), new ResourceLocation(FoodCraftReloadedMod.MODID, "kitchen_knife"), new ItemStack(FoodCraftReloadedMod.getProxy().getLoaderManager().getLoader(KitchenKnifeLoader.class).get().getInstanceMap(ItemKitchenKnife.class).get(kitchenKnifeType)), "XX ", "XX ", "  S", 'X', OreIngredient.fromStacks(kitchenKnifeType.getRepairItemStack()), 'S', "stickWood");
    }
    for (VegetableType vegetableType : VegetableType.values()) {
        RecipeManager.getInstance().addRecipe(new DrinkRecipe(vegetableLoader.getInstanceMap(ItemVegetable.class).get(vegetableType), new FluidStack(vegetableLoader.getInstance(FluidVegetableJuice.class, vegetableType), 1000)));
        GameRegistry.addShapelessRecipe(new ResourceLocation(FoodCraftReloadedMod.MODID, NameBuilder.buildRegistryName(vegetableType.toString(), "icecream")), new ResourceLocation(FoodCraftReloadedMod.MODID, "icecream"), new ItemStack(vegetableLoader.getInstanceMap(ItemVegetableIcecream.class).get(vegetableType)), OreIngredient.fromItem(FCRItems.ORIGINAL_ICE_CREAM), OreIngredient.fromItem(vegetableLoader.getInstanceMap(ItemVegetableJuice.class).get(vegetableType)));
        GameRegistry.addShapelessRecipe(new ResourceLocation(FoodCraftReloadedMod.MODID, NameBuilder.buildRegistryName("cake", "vegetable", vegetableType.toString())), new ResourceLocation(FoodCraftReloadedMod.MODID, "cake"), new ItemStack(vegetableLoader.getInstanceMap(ItemVegetableCake.class).get(vegetableType)), OreIngredient.fromItem(vegetableLoader.getInstanceMap(ItemVegetableJuice.class).get(vegetableType)), OreIngredient.fromItem(Items.CAKE));
    }
// ForgeRegistries.RECIPES.register(new CakeRecipe().setRegistryName(FoodCraftReloadedMod.MODID, "cake_recipe"));
}
Also used : KitchenKnifeType(cc.lasmgratel.foodcraftreloaded.minecraft.common.item.tool.KitchenKnifeType) FluidStack(net.minecraftforge.fluids.FluidStack) FluidVegetableJuice(cc.lasmgratel.foodcraftreloaded.minecraft.common.fluid.FluidVegetableJuice) DrinkRecipe(cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.DrinkRecipe) ItemKitchenKnife(cc.lasmgratel.foodcraftreloaded.minecraft.common.item.tool.ItemKitchenKnife) FluidFruitJuice(cc.lasmgratel.foodcraftreloaded.minecraft.common.fluid.FluidFruitJuice) ResourceLocation(net.minecraft.util.ResourceLocation) ItemStack(net.minecraft.item.ItemStack) Load(cc.lasmgratel.foodcraftreloaded.minecraft.common.util.loader.annotation.Load)

Example 3 with DrinkRecipe

use of cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.DrinkRecipe in project FoodCraft-Reloaded by LasmGratel.

the class DrinkMachineTest method testRecipeIngredients.

@Test
public void testRecipeIngredients() {
    // Add null -> null recipe
    RecipeManager.getInstance().addRecipe(new DrinkRecipe(null, null));
    // Should be null recipe
    DrinkRecipe recipe = RecipeManager.getInstance().getRecipeNullable(DrinkRecipe.class, new RecipeInput((Item) null));
    // Should be presented
    Assert.assertNotNull(recipe);
    // Null input
    Assert.assertNull(recipe.getInput().first());
    // Null output
    Assert.assertNull(recipe.getOutput().first());
}
Also used : Item(net.minecraft.item.Item) RecipeInput(cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.RecipeInput) DrinkRecipe(cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.DrinkRecipe) Test(org.junit.Test)

Example 4 with DrinkRecipe

use of cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.DrinkRecipe in project FoodCraft-Reloaded by LasmGratel.

the class TileEntitySmeltingDrinkMachine method startProgress.

@Override
public void startProgress() {
    DrinkRecipe recipe = RecipeManager.getInstance().getRecipeNullable(DrinkRecipe.class, new RecipeInput(itemStackHandler.getStackInSlot(0).getItem()));
    if (recipe != null) {
        FoodCraftReloaded.getLogger().debug("Smelting drink machine: Found recipe " + recipe.getOutput().<FluidStack>first().getFluid().getName());
        fluidOutput = recipe.getOutput().first();
        output = recipe.getOutput().second();
        itemStackHandler.getStackInSlot(0).splitStack(1);
    }
}
Also used : RecipeInput(cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.RecipeInput) FluidStack(net.minecraftforge.fluids.FluidStack) DrinkRecipe(cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.DrinkRecipe)

Aggregations

DrinkRecipe (cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.DrinkRecipe)4 RecipeInput (cc.lasmgratel.foodcraftreloaded.minecraft.api.recipe.RecipeInput)3 FluidStack (net.minecraftforge.fluids.FluidStack)3 FluidFruitJuice (cc.lasmgratel.foodcraftreloaded.minecraft.common.fluid.FluidFruitJuice)1 FluidVegetableJuice (cc.lasmgratel.foodcraftreloaded.minecraft.common.fluid.FluidVegetableJuice)1 ItemKitchenKnife (cc.lasmgratel.foodcraftreloaded.minecraft.common.item.tool.ItemKitchenKnife)1 KitchenKnifeType (cc.lasmgratel.foodcraftreloaded.minecraft.common.item.tool.KitchenKnifeType)1 Load (cc.lasmgratel.foodcraftreloaded.minecraft.common.util.loader.annotation.Load)1 Item (net.minecraft.item.Item)1 ItemStack (net.minecraft.item.ItemStack)1 ResourceLocation (net.minecraft.util.ResourceLocation)1 Test (org.junit.Test)1