70ce6ce831
This makes it easier for downstream projects (forks) to replace the version fetching system with their own. It is as simple as implementing an interface and overriding the default implementation of org.bukkit.UnsafeValues#getVersionFetcher() It also makes it easier for us to organize things like the version history feature. Lastly I have updated the paper implementation to check against the site API rather than against jenkins.
32 Zeilen
1.3 KiB
Diff
32 Zeilen
1.3 KiB
Diff
From d1b141797220036ffea3ebe16dc6d86302cab4b7 Mon Sep 17 00:00:00 2001
|
|
From: Mark Vainomaa <mikroskeem@mikroskeem.eu>
|
|
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 bb4dde0de..60f839056 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
|
@@ -759,4 +759,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.21.0
|
|
|