- Баллы
- 173
Уважаемые, в силу своей лени и нежелания продолжать копать исходники ядра без какого-либо осмысления, прошу откликнуться тех, кто знает.
Суть в заголовке. Как происходит подбор предмета на уровне общения клиент<->сервер, какие пакеты отправляют, как определяют и т.п. Интересует серверная сторона, в качестве клиента ванильный клиент.
Сервер каждый тик движения проверяет на сущности игрока все сущности в радиусе 1-го блока от игрока, расширяя его BoundBox до соответствующих размеров. Далее у каждой сущности вызывается метод взаимодействия с сущностью типа человек (EntityHuman). У предметов, стрел, сфер опыта (может что-то ещё) в этом методе вызывается обработчик подбора, который отправляет на клиент пакет PacketPlayOutCollect. Далее предмет обрабатывает своё докладывание в инвентарь игрока.
Суть в заголовке. Как происходит подбор предмета на уровне общения клиент<->сервер, какие пакеты отправляют, как определяют и т.п. Интересует серверная сторона, в качестве клиента ванильный клиент.
Сервер каждый тик движения проверяет на сущности игрока все сущности в радиусе 1-го блока от игрока, расширяя его BoundBox до соответствующих размеров. Далее у каждой сущности вызывается метод взаимодействия с сущностью типа человек (EntityHuman). У предметов, стрел, сфер опыта (может что-то ещё) в этом методе вызывается обработчик подбора, который отправляет на клиент пакет PacketPlayOutCollect. Далее предмет обрабатывает своё докладывание в инвентарь игрока.
Последнее редактирование: