* Add Entity.changeDimension patch and transitively required patches
* Fix throws declaration on CommandSetDimension#execute
* Fix rest of errors in fluid package
* Add PLAYER_REACH attribute
* Fix compile errors in fml.client.config and add GuiButton patch
* Delete unnecessary client.config classes, fix all config errors
* Comment some fluid errors in models
* Fix all errors in common package root, except ForgeHooks
* Mass comment network package
* Experimental conversion of extended states to generic base class
* Fix errors in common.util
* Remove config annotation stuff cuz lex said so
* Make extended state stuff compile fully
* Add KeyBinding#getKey and clean up errors in KeyModifier
* Add dimension IRenderHandler patches
* Fix most of the compile errors in client package.
The rest are missing Block/KeyBinding patches
* Disable selective reloads until configs are finished
* Add OnlyIn on IForgeDimension to match those of Dimension
The abstract class will be used as the default, and to enable delegates but we should keep it api simple by keeping the interface.
Removed some patches that didnt get removed in the rebase.
Tests do not run yet.
Things of note:
Removed the idea of substitutions, just register multiple items with the same name they will override each other like a normal map.
Decoupled Forge registries from vanilla classes. They now use bouncer classes. MODDERS SHOULD NEVER USE THESE
Introduced more stringent registry locking. As it sits things are only allowed to be registered during the RegistryEvent.Registry phases!
This is to force modders to split up their registrations, and pave the way for calling these functions multiple times during a single MC lifecycle.
ObjectHolder, Missing Mappings, etc... *should* now work for all registry types, nothing should be special cased to Blocks/Items anymore.
Added optional generic dummy factory to registries, to allow registry creators the ability to dummy more then just Blocks.
Re-worked the ItemStack transformer and applied it to ItemBlock and ItemBlockSpecial. Allowing us to cleanup reflective hacks in Block callbacks.
Registry onAdd callback is now only fired on the ACTIVE registry, fixing any issues of temp registries overriding active objects.