A very big update with a lot of changes that accumulated over the past months. It took a while for all plugins to become stable again after introducing so many new things, but now is the day I can finally release all of these things
Most plugins will not have to be updated, but TrainCarts may lose backwards compatibility and will need to be updated.
Highlights
- Map display widgets like textboxes and buttons! Finally UI-worthy!
- Adds support for MC 1.8 - 1.8.7
- Quaternion and 4x4 Matrix maths
Changes
- [Fixed] Full support for MC1.8-MC1.8.7, as well as a bugfix for MC1.8.8
- [Added] [Map Display] Map canvas drawing functions added
- [Added] [Map Display] Map widgets system implemented
- Map display input propagation with activation/focussing
- Callbacks when focussing/blurring/input/attach/detach
- Rendering, invalidation, resizing logic
- Recursive widgets (widgets with children)
- Standard window, text, button and tab view widgets
- Key input + repeat counter + fixes for MC ~1.8
- [Fixed] [Map Display] Map rendering of items
- Patch glitches with high-resolution textures
- Basic support for item colors (leather armor, potions, etc.)
- [Fixed] [Map Display] Map resource pack loading bugs
- Automatic downloading from URL
- Recursive model loading ('reference self')
- Improve logging, some errors were vague
- [Added] [Map Display] New tiny 5x3 font
- [Fixed] [Map Display] Performance improvements and bugfixes for framed map displays
- [Added] [Map Display] New convenience functions for getting map displays bound to items / from player viewers
- [Added] [Math] Matrix/Quaternion 3D maths
- [Fixed] [Entity] Entity network controller initial spawning logic on bind
- [Added] [Entity] Bounding box set size methods
- [Added] [Entity] World property for EntityAdd/EntityRemove event
- [Added] [Configuration] getNodeList for storing node lists in yaml
- [Added] [Configuration] toString() (useful for debug)
- [Fixed] [World] getChunkAsync not actually async and not calling Runnable callback
- [Fixed] [World] isDarkWorld() property not correct on all server versions (affects Light Cleaner)
- [Fixed] [World] Performance issues in BlockData for getRawData/getType methods
- [Fixed] [Mountiplex] Multithreading-related glitch when initializing templates (rare bug)
- [Fixed] [Mountiplex] Performance improvement of enum parsing from String
- [Added] Timings API using aikar's timings library (spigot timings)
- [Added] Implicitly shared set and list, for efficient defensive copying of collections