Conversation
Exaxxion
approved these changes
Oct 23, 2021
Exaxxion
left a comment
There was a problem hiding this comment.
qc_pr20.mp4
Looks like it fixes the issue to me.
NotMyWing
pushed a commit
that referenced
this pull request
Jun 3, 2023
Co-authored-by: DStrand1 <DStrand1@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes the Quantum Compressor not running without an item in the input slot, even when a catalyst was present and the compressor was at the correct amount of input items to make a singularity.
This was occurring because
recipewas being initialized to null, and was only being updated in the!input.isEmpty()if statement, meaning that if there was not anything in the input, the recipe would continue to be null and therefore not progress the output.This PR changes the order of the update loop slightly, first finding the
materialStackif the input was not empty, and then finding the recipe and proceeding on with the update loop. This was done to prevent an infinite failure loop, as if the recipe was simply changed togetRecipe(), it would still return null for 1 tick, as it was called before the materialStack was initialized. This lead to the infinite failure loop due to the materialStack being cleared on invalid recipe.Now, the
materialStackis updated first, meaning that recipe will never be null for 1 tick for valid inputs, and also the recipe finding itself is moved out into the main update loop, to prevent null recipe failures later on if the input was empty.Closes #19