Implement palette generation and investigate palette changes between
versions. Turns out 1.13- has legacy IDs, 1.14 switches to entity
palette and 1.15 refreshes the whole palette just to insert Bee.
Also refactor entity handling code here and there.
Minecraft 1.14 is now fully supported.
- Implement NBT parsing to skip NBT field in chunk data
- Update lighting data format in Chunk Data parsing
- Move Chunk Data parsing into Protocol18Terrain.cs
- Improve PaletteGenerator to greatly reduce palette files sizes
- Re-Generate Palette113.cs to reduce its size (378 Kib -> 50 Kib)
- Generate Palette114.cs (57 Kib instead of 516 Kib with prev format)
- Update Material.cs and MaterialExtensions.cs for new block types
Special thanks to @TheSnoozer and @vkorn for their help!
- Implement global block Palette mechanism
- Add class generation tool from blocks.json
- Regenerate Material.cs and redefine solid blocks
- Migrate previous Material.cs into Palette112
- Generate Palette113 from MC 1.13.2 blocks.json
- Improve Block class to handle up to 65535 block states
- Adjust terrain parsing, small fixes in packets
- Remove unused snapshot-related protocol cases
Solves #599