CraftTweaker

CraftTweaker

151M Downloads

JEI Shows it right, but actual crafting take any item

MrAmericanMike opened this issue · 5 comments

commented

So I'm trying to create recipes using some Eggs from the mod Hatchery. Technically the egg is the same all the time, it just holds different data on it.

I'm trying with something like this:

var goldEgg = hatchery:hatcheryegg.withTag({eggColor: 13421568, display: {Name: "Gold Chicken§r Egg"}, storedEntity: {Type: 300, id: "chickens.ChickensChicken"}});

var egg = minecraft:egg;

And a recipe:

recipes.addShaped(cmd:core_gold,[
[goldEgg, goldEgg, goldEgg],
[goldEgg, egg, goldEgg],
[goldEgg, goldEgg, goldEgg]
]);

JEI shows the recipe with the correct items, but when actually trying to craft it, the recipe will take any hatchery egg as a valid item to craft the recipe, and not only the Gold ones.

Is there anything to do, or in this case, this is something just not possible to achieve?

commented

Rather use the code block,

like this "``` stuff here ```"

but anyway, ".withTag" is for output items, input items need

.onlyWithTag
commented

Thanks a lot gonna give that a try ;) Didn't know that was a thing.

commented

I guess the problem I'm having is that CraftTweaker throws an error/warning when trying to use the whole NBT data on the egg.

<hatchery:hatcheryegg>.withTag({eggColor: 13421568, display: {Name: "Gold Chicken§r Egg"}, storedEntity: {IsChickenJockey: 0 as byte, HurtByTimestamp: 0, Leashed: 0 as byte, Health: 4.0 as float, Attributes: [{Base: 4.0, Name: "generic.maxHealth"}, {Base: 0.0, Name: "generic.knockbackResistance"}, {Base: 0.25, Name: "generic.movementSpeed"}, {Base: 0.0, Name: "generic.armor"}, {Base: 0.0, Name: "generic.armorToughness"}, {Base: 16.0, Name: "generic.followRange"}], FallFlying: 0 as byte, LeftHanded: 0 as byte, ForcedAge: 0, AbsorptionAmount: 0.0 as float, HandItems: [{}, {}], ArmorDropChances: [0.085 as float, 0.085 as float, 0.085 as float, 0.085 as float], EggLayTime: 6000, Type: 300, InLove: 0, DeathTime: 0 as short, ArmorItems: [{}, {}, {}, {}], CanPickUpLoot: 0 as byte, HandDropChances: [0.085 as float, 0.085 as float], PersistenceRequired: 0 as byte, id: "chickens.ChickensChicken", HurtTime: 0 as short, Age: -24000}})

For some reason it doesnt like "HandItems: [{}, {}], " or "ArmorItems: [{}, {}, {}, {}],"

It gives me an error parsing -- ] or , expected.

commented

not really a fix for that unfortunately :/

commented

Ohh ok ;)

I managed to make a wordaround to use a custom item instead of using the eggs on crafting a recipe, but at least I now know about the onlyWithTag, for sure it will come handy on future recipes.

Thanks a lot.