This is a small update with a few additions and fixes.
Bigger features will come in the future, especially v1.8
Have suggestions? Feel free to
p.m me, I will add it as soon as possible
Changelog:
I. Additions
1. Added EntityUtils
+ EntityUtils#setAttribute(Entity entity, Attribute attribute)
+ EntityUtils#getAttributes(Entity entity)
2. Added PlayerUtils
+ PlayerUtils#getPing(Player player)
+ PlayerUtils#getOfflineId(String player)
+ PlayerUtils#getProfile(Player player)
+ PlayerUtils#setProfile(Player player, GameProfile profile)
+ PlayerUtils#getSkin(Player player)
+ PlayerUtils#changeSkin(Player player, Skin skin)
+ PlayerUtils#changeSkin(Player player, Skin skin, Player... viewers)
+ PlayerUtils#freeze(Player player)
+ PlayerUtils#unfreeze(Player player)
3. Added ProfileBuilder
4. Added HandSlot (enum)
5. Added CustomPayload
+ CustomPayload#create(String channel, ByteBuf buf)
+ CustomPayload#openBook(HandSlot hand)
6. Added PublicKeyEncryption
+ PublicKeyEncryption#genKeyPair(int keysize)
+ PublicKeyEncryption#encode(PublicKey secretKey, byte[] data)
+ PublicKeyEncryption#decode(PrivateKey secretKey, byte[] data)
7. Added BlockCipherEncryption
+ BlockCipherEncryption#genKey(int keysize)
+ BlockCipherEncryption#encode(SecretKey secretKey, byte[] data)
+ BlockCipherEncryption#decode(SecretKey secretKey, byte[] data)
II. Changes
1. Removed PlayerManager
2. Removed EntityManager
3. Removed GameProfileManager
4. Optimized NPC
5. ChildCommandBuilder now splits stacked names into valid ones
6. Cleared the code and enhanced the performance of a few listeners
7. Improved SkinAPI. Skin files now have new extension (".skin3")
III. Fixed bugs
1. Couldn't change skins in 1.13.1 and newer versions
2. SkinAPI didn't save skin files and have errors while loading skins
3. SerializationAPI counted even unrelated fields during serialization processes