Auto Network Lib
Активный0.0
Установок
Последнее обновление
Auto Network Lib
Auto Network Lib представляет собой библиотеку для автоматической сериализации сетевых пакетов, которая значительно упрощает процесс работы с сетевыми сообщениями в модах для Minecraft.
Основные возможности
Библиотека автоматически обрабатывает сериализацию и десериализацию полей в сетевых пакетах, избавляя разработчиков от необходимости писать повторяющийся код. Все операции с пакетами автоматически выполняются в основном потоке игры, что обеспечивает корректную работу с игровой логикой.
Поддерживаемые типы данных
Встроенная поддержка включает большинство распространенных типов данных:
- Примитивные типы: int, long, float, double, boolean, char, byte, short
- Обертки: Integer, Long, Float, Double, Boolean, Character, Byte, Short
- Строки: String
- Игровые объекты: NBTTagCompound, ItemStack, BlockPos, Vec3d, Color3f
Работа с коллекциями
Библиотека поддерживает автоматическую сериализацию различных коллекций Java:
- Списки: List
, ArrayList , Stack , Vector , LinkedList - Множества: Set
, HashSet - Словари: Map<T,K>, HashMap<T,K>
- Одномерные массивы любого типа
Также возможна работа со сложными вложенными структурами, например:
- HashMap<Integer, List
> - List<List<List
>> - HashMap<List
, List >
Расширяемость и производительность
Для неподдерживаемых типов данных можно добавить собственные сериализаторы. Библиотека оптимизирована для высокой производительности: рефлексия используется только при первой сериализации пакета, а для чтения и записи данных применяются более быстрые method handles вместо стандартной рефлексии.