Some general refactoring of every monitor including panels and terminals.
Disabled glPushAttrib and glPopAttrib for StorageMonitor as this can be a
performance issue.
Conflicts:
src/main/java/appeng/parts/AEBasePart.java
src/main/java/appeng/parts/reporting/PartConversionMonitor.java
src/main/java/appeng/parts/reporting/PartDarkMonitor.java
src/main/java/appeng/parts/reporting/PartMonitor.java
src/main/java/appeng/parts/reporting/PartPatternTerminal.java
src/main/java/appeng/parts/reporting/PartSemiDarkMonitor.java
src/main/java/appeng/parts/reporting/PartStorageMonitor.java
src/main/java/appeng/parts/reporting/PartTerminal.java
Outsources the encoding of the compass data into the file name
Written tests for the encoding
Did some internal cleaning of the class
Conflicts:
src/main/java/appeng/block/solids/BlockSkyStone.java
src/main/java/appeng/core/WorldSettings.java
src/main/java/appeng/core/features/registries/PlayerRegistry.java
src/main/java/appeng/core/sync/network/NetworkHandler.java
src/main/java/appeng/core/worlddata/PlayerMapping.java
src/main/java/appeng/core/worlddata/PlayerMappingsInitializer.java
src/main/java/appeng/services/CompassService.java
src/main/java/appeng/worldgen/MeteoritePlacer.java
src/main/java/appeng/worldgen/MeteoriteWorldGen.java
Removes the improper way to set itself into a public static non-final variable.
Removes the direct access to the IntegrationRegistry from AppEng. Will be added at some later point somewhere else for non-singleton access.
Constructor is set to package private to enable possible construction from unit tests. Are current not runnable sind it is currently tied to the FML Loader instance.
Every Block had a call to its super, passing its own class.
This can easily be simulated by calling `this.getClass()` in the super class.
Also this was basically only used as using a name.
In the future it might be advisable to not use such methods,
since they are prone to refactoring.
If a feature dependency of ItemMultiMaterial was disabled, the returned value was never assigned with the constructed. Pulling out the construction and setting it before checking it, prevents the NPE and also matches the behaviour in ItemMultiPart, where parts are constructed, but never registered.
Added an additional map to store all parts and be able to access them if needed.
Added public preconditions
Added private asserts
Excluded public overridden methods, since behaviour can be unexpected
Many exceptions got an improvement due to changed class or description or details it is providing.
Is not complete, needs to be done in patches in the regions, where it is needed, since some are just
swallowed.
Removed total usage of pure RuntimeExceptions to 0.