CraftTweaker's 'marked' Only Returns Last Marked Item in Shaped Recipes
legendblade opened this issue ยท 2 comments
Issue Description
When attempting to write an IRecipeFunction, using CT's .marked("key") on the inputs only returns the last row of inputs that was marked when the recipe is set in an Artisan table if the recipe is set as shaped. Shapeless recipes work fine. Standard non-artisan table recipes also work fine.
What Happens
Attempting to create a shaped recipe using multiple marked inputs causes only the last row of marked inputs to be valid.
Steps to reproduce:
- Create RecipeBuilder
- Add shaped recipe with multiple rows, on each row, use the 'marked' function on at least one input
- Set a recipe function which prints out the input keys and names
- Note that only inputs in the last row are properly stored; while the keys will be present for all other rows, their values will be null.
What You Expect to Happen
Marked inputs would be available in the input map regardless of which row of the recipe they were on.
Script
https://gist.github.com/legendblade/d0f6c4b0236b1120a5a1efbb6032ab71
Crash Log
No related crash.
Affected Versions
- Minecraft: 1.12.2
- Forge: 14.23.4.2703
- CraftTweaker: 1.12-4.1.8
- Artisan Worktables: 1.12.2-1.18.6
- Athenaeum: 1.12.2-1.14.0
Thanks for the extremely quick turnaround on this. I just wish I was having more luck getting CraftTweaker to do what I want with the function itself, but, that's entirely a limitation of ZenScript now (dang inline functions that don't capture variables).
Anyways, thanks again for the fix and for the awesome mod!