geforkt von Mirrors/Paper
Reimplement PlayerEditBookEvent
Dieser Commit ist enthalten in:
Ursprung
af9010bd2a
Commit
4d7ed88be2
87
Spigot-Server-Patches/Reimplement-PlayerEditBookEvent.patch
Normale Datei
87
Spigot-Server-Patches/Reimplement-PlayerEditBookEvent.patch
Normale Datei
@ -0,0 +1,87 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: willies952002 <admin@domnian.com>
|
||||
Date: Sat, 23 Apr 2016 19:51:19 -0400
|
||||
Subject: [PATCH] Reimplement PlayerEditBookEvent
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -0,0 +0,0 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
|
||||
ItemStack itemstack;
|
||||
ItemStack itemstack1;
|
||||
|
||||
+ try { // Paper - Reimplement BookEditEvent
|
||||
if ("MC|BEdit".equals(s)) {
|
||||
packetdataserializer = new PacketDataSerializer(Unpooled.wrappedBuffer(packetplayincustompayload.b()));
|
||||
|
||||
@@ -0,0 +0,0 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
|
||||
if (itemstack1 != null) {
|
||||
if (itemstack.getItem() == Items.WRITABLE_BOOK && itemstack.getItem() == itemstack1.getItem()) {
|
||||
itemstack1.a("pages", (NBTBase) itemstack.getTag().getList("pages", 8));
|
||||
+ CraftEventFactory.handleEditBookEvent(player, itemstack1); // Paper
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
} catch (Exception exception) {
|
||||
PlayerConnection.LOGGER.error("Couldn\'t handle book info", exception);
|
||||
+ this.disconnect("Invalid Book Data!"); // Paper
|
||||
return;
|
||||
} finally {
|
||||
packetdataserializer.release();
|
||||
@@ -0,0 +0,0 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
|
||||
|
||||
itemstack1.a("pages", (NBTBase) nbttaglist);
|
||||
itemstack1.setItem(Items.WRITTEN_BOOK);
|
||||
+ CraftEventFactory.handleEditBookEvent(player, itemstack1); // Paper
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
} catch (Exception exception1) {
|
||||
PlayerConnection.LOGGER.error("Couldn\'t sign book", exception1);
|
||||
+ this.disconnect("Invalid Book Data!"); // Paper
|
||||
return;
|
||||
} finally {
|
||||
packetdataserializer.release();
|
||||
@@ -0,0 +0,0 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
|
||||
}
|
||||
} catch (Exception exception3) {
|
||||
PlayerConnection.LOGGER.error("Couldn\'t set command block", exception3);
|
||||
+ this.disconnect("Invalid Command Block Data!"); // Paper
|
||||
} finally {
|
||||
packetdataserializer.release();
|
||||
}
|
||||
@@ -0,0 +0,0 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
|
||||
}
|
||||
} catch (Exception exception4) {
|
||||
PlayerConnection.LOGGER.error("Couldn\'t set command block", exception4);
|
||||
+ this.disconnect("Invalid Command Block Data!"); // Paper
|
||||
} finally {
|
||||
packetdataserializer.release();
|
||||
}
|
||||
@@ -0,0 +0,0 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
|
||||
}
|
||||
} catch (Exception exception5) {
|
||||
PlayerConnection.LOGGER.error("Couldn\'t set beacon", exception5);
|
||||
+ this.disconnect("Invalid Beacon Data!"); // Paper
|
||||
}
|
||||
}
|
||||
} else if ("MC|ItemName".equals(s)) {
|
||||
@@ -0,0 +0,0 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
|
||||
}
|
||||
}
|
||||
}
|
||||
+ // Paper start
|
||||
+ } finally {
|
||||
+ if (packetplayincustompayload.b().refCnt() > 0) {
|
||||
+ packetplayincustompayload.b().release();
|
||||
+ }
|
||||
+ }
|
||||
+ // Paper end
|
||||
|
||||
}
|
||||
|
||||
--
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren