* Lazily fill out the ItemList for network delta updates
* Implement a new api for looking up a single stored item to optimize network monitor updates
* Update buildscript
* Add Nonnull annotation to the argument
* AE API: Add a method to blacklist items/provide filters based on item/fluid.
Items can now be added to the blacklist to prevent them from being shown. This
does NOT blacklist them from being stored in storage cells (for the time being).
While the type filters were previously implemented directly in ItemRepo,
this commit adds them to the API.
ItemRepo is now extracted as an interface, primarily for AE2FC and other add-ons.
* Update buildscript
* Update buildscript and set gradle project name
* Implement fullscreen mode for the crafting tree view
* Tall crafting list view
* Default to tallMode = true
- Sets a configurable limit on the number of simulation steps and the size of the serialized tree to prevent DDOS
- Culls invisible parts of the tree when rendering, tested to maintain high fps on requests with 200k+ individual steps
- Displays the machines that are responsible for crafting via interfaces, with an API to override the displayed itemstack (for GT hatches to point to their multiblock when implemented)
More features, such as searching, filtering the tree etc. might come in future PRs.
* Remove unnecessary SideOnly CLIENT annotations for getting item names
* Split off the crafting context log message to avoid an additional concatenation
* Update buildscript
* Add a simple gt5u tool crafting unittest
* Fix child requests going missing when duplicates of the same item are present in the pattern
* Fix typo causing complex patterns to never attempt simulation
* Add a heuristic to better avoid requesting duplicate gt tools
* Add more complex tool crafting tests for the scenarios in <https://github.com/GTNewHorizons/GT-New-Horizons-Modpack/issues/12685>
* Fix getContainerItem to match vanilla in max damage handling
* Use the shared ae2 getContainerItem instead of a custom copy
* Update NEI
* Update buildscript
* Crafting Calculator V2 [WIP]
* Implement refunds
* Add a config option to switch crafting calculators, default to v2
* Initial AE2 glue code
* Fix scheduling as a Future
* The simplest of crafting now works
* Fix crafting cpu picking up the wrong pattern fuzzy matches
* Revert "use as substitute" changes in the old crafting calculator.
* Update buildscript
* Make meteorite locations independent of chunk loading order by using a grid-based system for location randomization
* Refactor MeteoritePlacer and related worldgen to be fully deterministic.
Also move around some initialization code into constructors to make it easier to read.
* Update buildscript
* Allow "use substitutions" patterns to request crafting of substituted components
Previously only existing substitution items would be used, but crafting new ones wouldn't be requested.
This may not be 100% reliable when multiple alternative patterns exist and only some are craftable, as not all possible crafting permutations are explored.
* Make patterns eligible for substitution crafting optional
* Add a gui button to toggle whether patterns can be used as crafting substitutions
* Add insertion mode to interface
* Add an editorconfig that seems to match what original developers was using
* Improve localization
* Add icons
Image credit to Mike#6628 on discord