Phantom crafting outputs

Published by ristar2 on Thu, 09/03/2020 - 17:01
Issue description

I've started work on a mod and was trying to get a custom crafting bench up and working. In the GUI I have each of the input tiles set to run a procedure that checks the recipes and places the appropriate item in the output slot whenever their contents are changed.

For some reason I cannot seem to work out, if you complete the crafting recipe and take the item it will instantly disappear from your hand. It will show in the output slot, but if you click on it it just vanishes. If you shift+click it into your inventory, it will sit in your backpack until you try to click on it to move it, then it vanishes.

The weirdest part of this is, it will not do this if you run the procedure TWICE. I've tried actually running the procedure twice in the procedure itself, but that doesn't seem to work. You can only take the item successfully if you actually input a duplicate item onto the grid, thus running the procedure that checks the recipe again, or use a debug button I added that literally just calls the same procedure.

I've tried iterating every way I can think of. I've run the line that places the output twice, I've set a master procedure that just runs the crafting procedure twice, I've put all of the functions into one main procedure instead of breaking them up, nothing works.

Attached is the workspace I had at time of writing.

Issue comments

Take the item from slot will return previous item, not current. But I can't tell much else as you did not follow the rules and fill out proper bug report.

When possible, attach your MCreator workspace (preferably a minimal example workspace required to reproduce the bug; use File -> Export workspace to a shareable ZIP...), game or build logs (full logs, do not crop them, in text format, screenshots of logs are not acceptable) from the Console tab or terminal and steps to reproduce the bug in your workspace. If logs are long, use service such as Pastebin to host the log and provide the link to the log from the ticket. Please specify which mod elements to check in your workspace too, if applicable.

I need steps to reproduce, workspace is not attached. Also make a minimal reproducible example with instruction on how to use, strip unrelated stuff from the workspace.

Attached original and stripped down workspaces. The original is MiroTest and the stripped down one is just Test

In original space:

The crafting bench in the original is labeled Darksteel forge. Place a diamond pickaxe or diamond sword in the center of the crafting grid, and surround it with darksteel relics. The output should be a black and orange version of the item in question. Once all of the items are in place, do not add or remove any items and attempt to claim the item. It will disappear. If you repeat this process, but add another block of stone or click the button it will not disappear. 

In minimized space

The crafting bench in this one is labeled TEST. Place a diamond pickaxe in the center of the crafting grid, and surround it with Stone blocks. The output should be a stone pickaxe. Attempt to claim the stone pickaxe int the same way as before and it will disappear. If you repeat this process, but add another block of stone or click the button it will not disappear.

Slight correction: For the original space it should say

If you repeat this process, but add another darksteel relic or click the button it will not disappear.

The original does not use blocks of stone.