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);
}
}
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"));
}
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());
}
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);
}
}
Aggregations