-
Notifications
You must be signed in to change notification settings - Fork 181
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
first work on porting recipe map #530
Closed
Closed
Conversation
This file contains 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
We probably have to break up some of the streams into normal iter loops, Java 8's performance isn't as good as Java 11+ in terms of streams. |
Yeah probably, this was just a quick port to get it working with GTCEu api |
TechLord22
added a commit
that referenced
this pull request
Aug 3, 2022
* first work on porting recipe map * Cleanup * Implement removal of recipes + removal tests * Disallow dupe recipes * fix merge issues * strip "nonConsumable" NBT tag from fluids before mapping to a recipe * implement recipe removal to lookup map * fix tests to reflect new behavior * restore exactVoltage argument for craftweaker recipes * Formatting and removal of unused variables * CountableIngredient.... * simplify recipe equals and hashcode, to match lookup * hide recipe duplicates due to itemstack combinations (ex. oredict) * actually remove them recipes.. * Implement fluid accepting in machines limited to valid recipes * tiny optimization on the fluid input check * NBT special case matching. Cleaning needed Directly from the future ( Tesseract API ) * clean up 1/? make stuff simpler. NBT match on cached recipe too more work towards NBT selective matching * hash itemstacks both with and without NBT comparison ingredients * trim branches. more removal work * more work on NBT matching * allow batteries with NBT tags to be extractable in the extractor * fix recipe removal * move ingredient NBT matching to an upper class * comments * canonalize ingredients * remove some copies and sums since we dont use them or modify them rename a few more methods for clarity * remove unused constructor * implement oredict ingredient * save some memory * patch ore dictionary support for CraftTweaker * fix ct exact voltage removal move to an NBT-checking ingredient. small renames * Removal of CountableIngredient and implementation of IGTRecipeInput * renames and clean up on lookup * fix safes * fix fluidingredient hash. * Switch to an abstract class instead of an interface * address some review issues * use a list to sort and return the available recipes * more NBT work * NBT fix * show recipes with special ingredients; initial patch for CT removal of ingredients with NBT conditions * more NBBT * more wildcard changes. micro optimizations * small fix for consistency delete unimplemented test command * down recipe check failure down to 7 errors * fix duplicated recipe inputs with differing amounts being counted twice * Branch only once if a ingredient has variations Add oredict string to output * Co-Pilot my butt * misc cleaning * Itemstack Wildcard issues... yay * string formating * recipe conflict checker rework * unify cache and reformat recipe check command * more recipe checks * old mans ramblings, might be reverted fully later * faster itemstack matching * avoid hashing some stacks to match some ingredients we dont care for * only mark output as full if we have that kind of output to fill * move the item list to a private class * some javadocs + more human-friendly logging * more abstracting of recipe inputs + reformatting * Update src/main/java/gregtech/api/recipes/ingredients/GTRecipeItemInput.java Co-authored-by: TechLord22 <[email protected]> * Update src/main/java/gregtech/api/recipes/RecipeMap.java Co-authored-by: TechLord22 <[email protected]> * Update src/main/java/gregtech/api/recipes/RecipeMap.java Co-authored-by: TechLord22 <[email protected]> * address reviews + run formatter on some files * move inner classes to another class * review issues * Fix JEI not displaying recipe with Fluid only inputs. Fix parallel multiplying input requirements permanently. * javadoc typos * defensive copies equals tweak recipe conflict check just uses max int for item/fluid sizes. * limit recipe matching to proper machine tier * More suitable GTRecipeInput caching collection + cache release * Stream's map instead of peek * Fix no return statement for map * Do not add parallel multiplied ingredients to the ingredient cache to avoid possible memory leak. annotate some Overriden methods * misc renames. remove some item/fluid copies. * Support equality checks for non-numerical nbt types * Cleaned up RecipeBuilder input methods + hash/equal impl for NBCondition * RecipePropertyStorage stuff + optimized collections in Recipe - Now resides in RecipeBuilder before being passed to Recipe - Immutable when it is in Recipe - EMPTY variant to save memory - Utilize applyProperty and made it make... more sense? - Removed some redundant overrides - GasCollectorDimensionProperty now uses an IntList instead of ArrayList<Integer> Co-authored-by: Abbe <[email protected]> Co-authored-by: PrototypeTrousers <[email protected]> Co-authored-by: TechLord22 <[email protected]>
This PR has now been superseded by #666, so I am closing this PR. |
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.
Start working on porting recipe map. I just made the initial workings but there are so many things to consider for other functions I left those be. It just builds a recipe map and performs lookup for now using a tree.