From dc1d89951de212ba6d0e75165e683e8368ee61ee Mon Sep 17 00:00:00 2001 From: Sotr Date: Wed, 20 Mar 2019 15:27:35 +0800 Subject: [PATCH] Dev import --- .../server/PacketPlayOutTabComplete.java | 63 +++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 src/main/java/net/minecraft/server/PacketPlayOutTabComplete.java diff --git a/src/main/java/net/minecraft/server/PacketPlayOutTabComplete.java b/src/main/java/net/minecraft/server/PacketPlayOutTabComplete.java new file mode 100644 index 000000000..9332f8ecb --- /dev/null +++ b/src/main/java/net/minecraft/server/PacketPlayOutTabComplete.java @@ -0,0 +1,63 @@ +package net.minecraft.server; + +import com.google.common.collect.Lists; +import com.mojang.brigadier.context.StringRange; +import com.mojang.brigadier.suggestion.Suggestion; +import com.mojang.brigadier.suggestion.Suggestions; +import java.io.IOException; +import java.util.Iterator; +import java.util.List; + +public class PacketPlayOutTabComplete implements Packet { + + private int a; + private Suggestions b; + + public PacketPlayOutTabComplete() {} + + public PacketPlayOutTabComplete(int i, Suggestions suggestions) { + this.a = i; + this.b = suggestions; + } + + public void a(PacketDataSerializer packetdataserializer) throws IOException { + this.a = packetdataserializer.g(); + int i = packetdataserializer.g(); + int j = packetdataserializer.g(); + StringRange stringrange = StringRange.between(i, i + j); + int k = packetdataserializer.g(); + List list = Lists.newArrayListWithCapacity(k); + + for (int l = 0; l < k; ++l) { + String s = packetdataserializer.e(32767); + IChatBaseComponent ichatbasecomponent = packetdataserializer.readBoolean() ? packetdataserializer.f() : null; + + list.add(new Suggestion(stringrange, s, ichatbasecomponent)); + } + + this.b = new Suggestions(stringrange, list); + } + + public void b(PacketDataSerializer packetdataserializer) throws IOException { + packetdataserializer.d(this.a); + packetdataserializer.d(this.b.getRange().getStart()); + packetdataserializer.d(this.b.getRange().getLength()); + packetdataserializer.d(this.b.getList().size()); + Iterator iterator = this.b.getList().iterator(); + + while (iterator.hasNext()) { + Suggestion suggestion = (Suggestion) iterator.next(); + + packetdataserializer.a(suggestion.getText()); + packetdataserializer.writeBoolean(suggestion.getTooltip() != null); + if (suggestion.getTooltip() != null) { + packetdataserializer.a(ChatComponentUtils.a(suggestion.getTooltip())); + } + } + + } + + public void a(PacketListenerPlayOut packetlistenerplayout) { + packetlistenerplayout.a(this); + } +}