- 78
- 3
- 10
Здрасте, ребят.
Есть сервер 1.7.10 KCauldron/Thermos, есть ProtocolLib, есть понимание как перехватывать/отменять/изменять пакеты стандартного протокола майна в плагине.
Есть мод БиблиоКрафт, и мне нужно среагировать на некоторые его пакеты. Причем, часть из них оставить без изменений, часть по условию изменить перед передачей серверному моду, а часть просто отменить. Соответственно нужно реагировать и на имя канала и на имя обёртки.
Я нашел в ведерке интерфейс PluginMessageListener, но он не предоставляет доступ к самому ивенту, и не позволяет изменить пакет.
Вопрос: Как, используя ProtocolLib или штатные механики Bukkit, сделать задуманное? Код писать за меня не нужно, просто ткнуть носом в способ создания PacketAdapter или в штатный интерфейс ведерка - дальше сам разберусь, думаю.
Из клиентского мода пакет отправляется примерно так:
Есть сервер 1.7.10 KCauldron/Thermos, есть ProtocolLib, есть понимание как перехватывать/отменять/изменять пакеты стандартного протокола майна в плагине.
Есть мод БиблиоКрафт, и мне нужно среагировать на некоторые его пакеты. Причем, часть из них оставить без изменений, часть по условию изменить перед передачей серверному моду, а часть просто отменить. Соответственно нужно реагировать и на имя канала и на имя обёртки.
Я нашел в ведерке интерфейс PluginMessageListener, но он не предоставляет доступ к самому ивенту, и не позволяет изменить пакет.
Вопрос: Как, используя ProtocolLib или штатные механики Bukkit, сделать задуманное? Код писать за меня не нужно, просто ткнуть носом в способ создания PacketAdapter или в штатный интерфейс ведерка - дальше сам разберусь, думаю.
Из клиентского мода пакет отправляется примерно так:
Java:
BiblioCraft.ch_BiblioClipboard = NetworkRegistry.INSTANCE.newEventDrivenChannel("BiblioUpdateInv");
BiblioCraft.ch_BiblioClipboard.sendToServer(new FMLProxyPacket(buffer, "BiblioUpdateInv"));