From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Mark Vainomaa <mikroskeem@mikroskeem.eu>
Date: Sun, 1 Apr 2018 02:28:43 +0300
Subject: [PATCH] Add openSign method to HumanEntity


diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java
index c426bdea5ef71a095cf2af9a8a83a162db3c05b7..2308fa3ca898bcb6c0ac2d4853f82a3398bf51f3 100644
--- a/src/main/java/org/bukkit/entity/HumanEntity.java
+++ b/src/main/java/org/bukkit/entity/HumanEntity.java
@@ -490,6 +490,26 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder
      */
     @Deprecated
     public void setShoulderEntityRight(@Nullable 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
+     * @deprecated use {@link #openSign(org.bukkit.block.Sign, org.bukkit.block.sign.Side)}
+     */
+    @Deprecated
+    default void openSign(@NotNull org.bukkit.block.Sign sign) {
+        this.openSign(sign, org.bukkit.block.sign.Side.FRONT);
+    }
+
+    /**
+     * Opens an editor window for the specified sign
+     *
+     * @param sign The sign to open
+     * @param side The side of the sign to open
+     */
+    void openSign(org.bukkit.block.@NotNull Sign sign, org.bukkit.block.sign.@NotNull Side side);
+    // Paper end
 
     /**
      * Make the entity drop the item in their hand.
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index b427a37d1b382037e946e5a899e571c3aebe5ba9..d8f97d8626850ed833b2dd32fab682cdf61a9948 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -3075,10 +3075,12 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
     /**
      * Open a Sign for editing by the Player.
      *
-     * The Sign must be placed in the same world as the player.
+     * The Sign must be in the same world as the player.
      *
      * @param sign The sign to edit
+     * @deprecated use {@link #openSign(Sign, Side)}
      */
+    @Deprecated
     public void openSign(@NotNull Sign sign);
 
     /**
