Adds datapack compatibility to Astral Manipulator recipes, which is useful for modpacks.
Updated recipe ingredient and results to use blockstate and itemstacks as those can be serialised to JSON and reduced overhead in recipe comparison logic.
Cleaned up missing getters, misleading class names
Added documentation
Updated Neoforge dependency
Future proofed recipe result type to allow more than just blockstates or itemstack results. E.g. Structure placements. Utilised DFU's DispatchCodecs that allows the JSON data to be dynamically defined and parsed based on a "type" field. Future proofed against 1.20.5+ changes where Mojang increased the enforcing of MapCodecs for DispatchCodecs.
Updated default recipe registration class to be used for data generation only
Tested on both Neoforge and Fabric with no regression in functionality.
For the end user, the in-game experience is the same as before this PR.
Would prefer to merge before release so that this refactor is included in subsequent version ports.
Tested on both Neoforge and Fabric with no regression in functionality. For the end user, the in-game experience is the same as before this PR.
Would prefer to merge before release so that this refactor is included in subsequent version ports.