Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Voiding and Incorrect Input Consumption in Parallel Recipes #2649

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

IntegerLimit
Copy link
Contributor

@IntegerLimit IntegerLimit commented Oct 23, 2024

What

This PR fixes two issues relating to parallel recipes:

  • Inputs being modified, leading to incorrect input consumption, when said inputs are not cached
  • Voiding of parallel recipes when outputs have stack sizes less than 64, and the output bus is too full

The only recipe with non-cached inputs in vanilla GT is canning machine filling recipes.

Fixes Nomi-CEu/Nomi-CEu#924

Implementation Details

This PR simply copies the GTRecipeInput when applying parallel, instead of modifying it directly. This has no effect on cached inputs, which are copied when withAmount is called regardless.

For the output voiding fix, this PR simply checks for the minimum of the slot's available space and the stack's maxStackSize, as empty slots return an available space of 64 regardless of intended stack.

Outcome

Fixes Nomi-CEu/Nomi-CEu#924
Fixes edge case voiding with parallel recipes

Additional Information

This PR was originally implemented in Labs here: Nomi-CEu/Nomi-Labs@1c35289 & Nomi-CEu/Nomi-Labs@eb4fab3

Potential Compatibility Issues

None

@IntegerLimit IntegerLimit requested a review from a team as a code owner October 23, 2024 21:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant