Fix missing ServerListPingEvent call for legacy pings
Dieser Commit ist enthalten in:
Ursprung
7fa173e6d1
Commit
a3c2ec0314
34
nms-patches/LegacyPingHandler.patch
Normale Datei
34
nms-patches/LegacyPingHandler.patch
Normale Datei
@ -0,0 +1,34 @@
|
||||
--- a/net/minecraft/server/LegacyPingHandler.java
|
||||
+++ b/net/minecraft/server/LegacyPingHandler.java
|
||||
@@ -34,11 +34,12 @@
|
||||
MinecraftServer minecraftserver = this.b.d();
|
||||
int i = bytebuf.readableBytes();
|
||||
String s;
|
||||
+ org.bukkit.event.server.ServerListPingEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callServerListPingEvent(minecraftserver.server, inetsocketaddress.getAddress(), minecraftserver.getMotd(), minecraftserver.y(), minecraftserver.z()); // CraftBukkit
|
||||
|
||||
switch (i) {
|
||||
case 0:
|
||||
LegacyPingHandler.a.debug("Ping: (<1.3.x) from {}:{}", inetsocketaddress.getAddress(), inetsocketaddress.getPort());
|
||||
- s = String.format("%s\u00a7%d\u00a7%d", new Object[] { minecraftserver.getMotd(), minecraftserver.y(), minecraftserver.z()});
|
||||
+ s = String.format("%s\u00a7%d\u00a7%d", new Object[] { event.getMotd(), event.getNumPlayers(), event.getMaxPlayers()}); // CraftBukkit
|
||||
this.a(channelhandlercontext, this.a(s));
|
||||
break;
|
||||
case 1:
|
||||
@@ -47,7 +48,7 @@
|
||||
}
|
||||
|
||||
LegacyPingHandler.a.debug("Ping: (1.4-1.5.x) from {}:{}", inetsocketaddress.getAddress(), inetsocketaddress.getPort());
|
||||
- s = String.format("\u00a71\u0000%d\u0000%s\u0000%s\u0000%d\u0000%d", new Object[] { 127, minecraftserver.getVersion(), minecraftserver.getMotd(), minecraftserver.y(), minecraftserver.z()});
|
||||
+ s = String.format("\u00a71\u0000%d\u0000%s\u0000%s\u0000%d\u0000%d", new Object[] { 127, minecraftserver.getVersion(), event.getMotd(), event.getNumPlayers(), event.getMaxPlayers()}); // CraftBukkit
|
||||
this.a(channelhandlercontext, this.a(s));
|
||||
break;
|
||||
default:
|
||||
@@ -66,7 +67,7 @@
|
||||
}
|
||||
|
||||
LegacyPingHandler.a.debug("Ping: (1.6) from {}:{}", inetsocketaddress.getAddress(), inetsocketaddress.getPort());
|
||||
- String s1 = String.format("\u00a71\u0000%d\u0000%s\u0000%s\u0000%d\u0000%d", new Object[] { 127, minecraftserver.getVersion(), minecraftserver.getMotd(), minecraftserver.y(), minecraftserver.z()});
|
||||
+ String s1 = String.format("\u00a71\u0000%d\u0000%s\u0000%s\u0000%d\u0000%d", new Object[] { 127, minecraftserver.getVersion(), event.getMotd(), event.getNumPlayers(), event.getMaxPlayers()}); // CraftBukkit
|
||||
ByteBuf bytebuf1 = this.a(s1);
|
||||
|
||||
try {
|
In neuem Issue referenzieren
Einen Benutzer sperren