Hey all, happy to finally find a support forum on this subject with replies from this year. Hopefully someone will still be around
I have a 1.7.10 modpack that's been my off-again on-again personal project for a while. There are just so many nice mods for 1.7.10. Unfortunately, a few of those very nice mods were left a bit unfinished before being abandoned for future versions. Se la vie. And yay for Minetweaker.
I've been working on balancing, consistency, and personal preference for the 1.7.10 cooking recipes in Pam's Harvestcraft, including requiring baking for all the different kinds of bread. I want to make the single Dough item from the mod act like several different types of Dough that each yield different bread products from the Furnace when baked. I've been trying to achieve this using .withTag and .onlyWithTag, letting you create dough types with their own Names and Lores to act as different individual versions.
My recipes for making the special dough using .withTag at the Crafting Table work fine. The Dough product gets its intended Name and unique Lore. I can also successfully make Crafting Table recipes work using .onlyWithTag and checking the Dough's Lore to get its corresponding bread product . . . but I don't want that step to happen on the Crafting Table; I want to use the Furnace.
That's not working so well. No matter which version of the Dough goes into the Furnace, the product is always the same single bread type for all Dough types, (including default.)
If my DoughOnly vals only use .onlyWithTag, then the bread that comes out is always the one in the very last Furnace recipe specified.
If they also include .withTag as in the excerpt below, then NEI will display the bread recipes (sort of,) and which single bread product all Doughs result in seems to change randomly every time I reload my scripts. I reload, all Dough types make the banana bread, reload again, they all make zucchini bread, reload again, now they all make ginger.
Does .onlyWithTag not work properly with Furnaces? Am I doing something else wrong? Is there another way to make one item act like several different versions in a Furnace? Do I have to upgrade to CraftTweaker? (I've tried, it makes things crash. If I can stick with what I've got, that would be preferred.)
Using MineTweaker 3.0.9C and ModTweaker 0.9.6 for 1.7.10.
Code:
// Fancy Bread Dough Differentiation
//==================================
//
import minetweaker.data.IData;
//
val dough = <harvestcraft:doughItem>;
// Pumpkin Bread
val pumpkinLore = ["Smells like pumpkin spice.", "It's really rather nice."] as IData;
val pumpkinTag = {display: {Name: "Pumpkin Bread Dough", Lore: pumpkinLore}} as IData;
val pumpkinOnlyTag = {display: {Lore: pumpkinLore}} as IData;
val pumpkinDough = dough.withTag(pumpkinTag);
val pumpkinDoughOnly = dough.withTag(pumpkinTag).onlyWithTag(pumpkinOnlyTag); // Extra .withTag for NEI purposes
val pumpkinBread = <harvestcraft:pumpkinbreadItem>;
recipes.addShapeless(pumpkinDough, [<harvestcraft:doughItem>, <ore:cropPumpkin>, <ore:listAllsugar>]); // TODO: add mixing bowl requirement
furnace.addRecipe(pumpkinBread, pumpkinDoughOnly);
// Gingerbread
val gingerLore = ["Smells cosy!"] as IData;
val gingerTag = {display: {Name: "Gingerbread Dough", Lore: gingerLore}} as IData;
val gingerOnlyTag = {display: {Lore: gingerLore}} as IData;
val gingerDough = dough.withTag(gingerTag);
val gingerDoughOnly = dough.withTag(gingerTag).onlyWithTag(gingerOnlyTag);
val gingerBread = <harvestcraft:gingerbreadItem>;
furnace.addRecipe(gingerBread, gingerDoughOnly);
And so on for all six special breads.