From c6ac33816b6ec2021d0c7fde25c247131dd22040 Mon Sep 17 00:00:00 2001 From: Mark Vainomaa Date: Sun, 1 Apr 2018 02:30:41 +0300 Subject: [PATCH] Add method to open already placed sign --- ...d-method-to-open-already-placed-sign.patch | 27 ++++++++++++++++ ...d-method-to-open-already-placed-sign.patch | 31 +++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 Spigot-API-Patches/0095-Add-method-to-open-already-placed-sign.patch create mode 100644 Spigot-Server-Patches/0286-Add-method-to-open-already-placed-sign.patch diff --git a/Spigot-API-Patches/0095-Add-method-to-open-already-placed-sign.patch b/Spigot-API-Patches/0095-Add-method-to-open-already-placed-sign.patch new file mode 100644 index 0000000000..56b2754584 --- /dev/null +++ b/Spigot-API-Patches/0095-Add-method-to-open-already-placed-sign.patch @@ -0,0 +1,27 @@ +From 68549b0d344a01f477843cb2023716f2db573f32 Mon Sep 17 00:00:00 2001 +From: Mark Vainomaa +Date: Sun, 1 Apr 2018 02:28:43 +0300 +Subject: [PATCH] Add method to open already placed sign + + +diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java +index 3939d4af..dd95773e 100644 +--- a/src/main/java/org/bukkit/entity/HumanEntity.java ++++ b/src/main/java/org/bukkit/entity/HumanEntity.java +@@ -335,4 +335,13 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, Permissible, Inv + */ + @Deprecated + public void setShoulderEntityRight(Entity entity); ++ ++ // Paper start - Add method to open already placed sign ++ /** ++ * Opens an editor window for the specified sign ++ * ++ * @param sign The sign to open ++ */ ++ void openSign(org.bukkit.block.Sign sign); ++ // Paper end + } +-- +2.16.3 + diff --git a/Spigot-Server-Patches/0286-Add-method-to-open-already-placed-sign.patch b/Spigot-Server-Patches/0286-Add-method-to-open-already-placed-sign.patch new file mode 100644 index 0000000000..763ce3d414 --- /dev/null +++ b/Spigot-Server-Patches/0286-Add-method-to-open-already-placed-sign.patch @@ -0,0 +1,31 @@ +From 7c3df4fa912a9bb2192a0d96cefc191085afd673 Mon Sep 17 00:00:00 2001 +From: Mark Vainomaa +Date: Sun, 1 Apr 2018 02:29:37 +0300 +Subject: [PATCH] Add method to open already placed sign + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +index a0128426f..d85b5defc 100644 +--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java ++++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +@@ -507,4 +507,17 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { + entity.remove(); + } + } ++ ++ // Paper start - Add method to open already placed sign ++ @Override ++ public void openSign(org.bukkit.block.Sign sign) { ++ org.apache.commons.lang.Validate.isTrue(sign.getWorld().equals(this.getWorld()), "Sign must be in the same world as player is in"); ++ org.bukkit.craftbukkit.block.CraftSign craftSign = (org.bukkit.craftbukkit.block.CraftSign) sign; ++ net.minecraft.server.TileEntitySign teSign = craftSign.getTileEntity(); ++ // Make sign editable temporarily, will be set back to false in PlayerConnection later ++ teSign.isEditable = true; ++ ++ getHandle().openSign(teSign); ++ } ++ // Paper end + } +-- +2.16.3 +