Don't allow 1.8 clients to join...

they crash when encountering 1.8 blocks/items/etc
This commit is contained in:
Zach Brown 2014-09-10 19:41:12 -05:00
parent 6d68d55940
commit e0bda3c916

View File

@ -397,6 +397,25 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
}
protected Item getLoot() {
diff --git a/src/main/java/net/minecraft/server/HandshakeListener.java b/src/main/java/net/minecraft/server/HandshakeListener.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/net/minecraft/server/HandshakeListener.java
+++ b/src/main/java/net/minecraft/server/HandshakeListener.java
@@ -0,0 +0,0 @@ public class HandshakeListener implements PacketHandshakingInListener {
}
// CraftBukkit end
- if (packethandshakinginsetprotocol.d() > 5 && packethandshakinginsetprotocol.d() != 47) { // Spigot
+ // PaperSpigot start - DC non-1.8 clients
+ if (packethandshakinginsetprotocol.d() != 47) {
+ chatcomponenttext = new ChatComponentText( "You must join using a 1.8 client!" );
+ this.b.handle(new PacketLoginOutDisconnect(chatcomponenttext), new GenericFutureListener[0]);
+ this.b.close(chatcomponenttext);
+ } else if (packethandshakinginsetprotocol.d() > 5 && packethandshakinginsetprotocol.d() != 47) { // Spigot
+ // PaperSpigot end
chatcomponenttext = new ChatComponentText( org.spigotmc.SpigotConfig.outdatedServerMessage ); // Spigot
this.b.handle(new PacketLoginOutDisconnect(chatcomponenttext), new GenericFutureListener[0]);
this.b.close(chatcomponenttext);
diff --git a/src/main/java/net/minecraft/server/Item.java b/src/main/java/net/minecraft/server/Item.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/net/minecraft/server/Item.java