Instead of creating a new file for each player with their UUID as the name, we create a single file and store it all in a List. That List gets converted to a UUID -> SoulNetwork map when read from the file.
MigrateNetworkDataHandler is used to migrate players from the old system to the new one. It reads both data files and sets the LP of the new network to the LP of the old network (if the old network is larger). Once conversion is done, we delete the old file so that it doesn't happen again and overwrite player progress.
This is an API breaking change due to an import change.
Update things
Fix some more things
Update once more
Refactoring and removing unnecessary null checks
Woops
Fix
Nother fix
Moar fix
Fix imports
Update ItemBindable.java
BM will now only load with Forge 1840+ as that is the version that PIE was re-implemented. Set dependency to avoid crashes. Also updated JEI version so it wouldn't crash with new Forge.
No more manual handling of binding items to players. Retains all previous functionality.
I have tested on both the Client and Server and it seems to work just fine. If any issues arise from this, do not hesitate to yell at me.
The deprecated methods will be removed after beta.
tterrag is a meany face and yelled at me for using class.getSimpleName(). So here's an API-friendly re-work of the registration system. This allows all our Items/Blocks to be obtained via the API. Just add a new enum.