Skocz do zawartości
  • 0

Tworzenie i odczytywanie pakietu PayLoad.


Masloid

Pytanie

Witam!

Otóż mam pewien problem...

Od razu wlepię kod: 

 

I problem jest taki, że przy dekodowaniu pakietu ta 1 linijka zwraca mi tag. Natomiast 2, która powinna zwrócić mi tego stringa zwraca mi null'a.

Proszę o pomoc!

Z góry dzięki!!

Edytowane przez LjayPL789
bludis

Zmieniam "klikalność" linka na "klikalny".

Notatka dodana przez bludis

Odnośnik do komentarza
Udostępnij na innych stronach

3 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

może po prostu spróbuj:

final Packet packet = new ClientPluginMessagePacket("MC|PrList", "jakisString".getBytes());
handler.sendPacket(packet);

a drugiego argumentu nie bedziesz dostawał w postaci stringa tylko tablicy byte, czyli sprobuj cos w stylu:

player.sendMessage(new String(event.getPacket().getByteArrays().getValue())); //nie wiem jakie tam sa metody

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
W dniu 14.08.2018 o 19:25, Masloid napisał:

Wysylanie jest w cliencie: Minecraft.getMinecraft().thePlayer.sendQueue.addToSendQueue(new C17PacketCustomPayload("MC|PrList", packetbuffer));

Chodzi mi o poprawne odebranie w pluginie.

 

 

no jak chcesz pobrac tą tablice byte'ow to uzywasz: packet.getByteArrays().read(0) w protocollibie, a to jak juz bedziesz nasluchiwal to bardzo prosto zrobic..

Cytat

public class CustomPluginMessageListener extends PacketAdapter {

  protected final String PREFIX = ChatColor.YELLOW + "[CasualProtector] -> " + ChatColor.RED;
  //jakies fieldy

  public CustomPluginMessageListener(Plugin plugin) {
    super(plugin, ListenerPriority.HIGHEST, Client.CUSTOM_PAYLOAD);
  }

}

no i tylko tam gdzie przetrzymujesz protocolManager to dodajesz ten listener

Odnośnik do komentarza
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...