Skip to content

Commit 95a8849

Browse files
committed
Only set chat UUID if not already set
Fixes #1310
1 parent 153dd61 commit 95a8849

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

src/main/java/com/comphenix/protocol/events/PacketContainer.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
import com.comphenix.protocol.reflect.cloning.*;
4444
import com.comphenix.protocol.reflect.cloning.AggregateCloner.BuilderParameters;
4545
import com.comphenix.protocol.reflect.fuzzy.FuzzyMethodContract;
46+
import com.comphenix.protocol.reflect.instances.MinecraftGenerator;
4647
import com.comphenix.protocol.utility.MinecraftMethods;
4748
import com.comphenix.protocol.utility.MinecraftReflection;
4849
import com.comphenix.protocol.utility.MinecraftVersion;
@@ -149,11 +150,17 @@ public PacketContainer(PacketType type, Object handle, StructureModifier<Object>
149150

150151
this.type = type;
151152

152-
if (type == PacketType.Play.Server.CHAT) {
153-
getUUIDs().writeSafely(0, new UUID(0L, 0L));
153+
setDefaults();
154+
}
155+
156+
private void setDefaults() {
157+
if (MinecraftVersion.NETHER_UPDATE.atOrAbove() && type == PacketType.Play.Server.CHAT) {
158+
if (!getUUIDs().optionRead(0).isPresent()) {
159+
getUUIDs().writeSafely(0, MinecraftGenerator.SYS_UUID);
160+
}
154161
}
155162
}
156-
163+
157164
/**
158165
* Construct a new packet container from a given handle.
159166
* @param packet - the NMS packet.

src/main/java/com/comphenix/protocol/reflect/instances/MinecraftGenerator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@
1414

1515
public class MinecraftGenerator {
1616
// system unique id representation
17-
private static final UUID SYS_UUID;
17+
public static final UUID SYS_UUID;
1818
// minecraft default types
19-
private static final Object AIR_ITEM_STACK;
19+
public static final Object AIR_ITEM_STACK;
2020
private static Object DEFAULT_ENTITY_TYPES; // modern servers only (older servers will use an entity type id)
2121
// minecraft method accessors
2222
private static final MethodAccessor NON_NULL_LIST_CREATE;

0 commit comments

Comments
 (0)