summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormd_5 <git@md-5.net>2016-11-23 10:27:49 +1100
committermd_5 <git@md-5.net>2016-11-23 10:27:49 +1100
commit7691c87df6ae10249dfc618feab7be21b966f4cb (patch)
tree6d3d446ef853cb7b90339f0f399836e9e7749d79
parentb5b0a97d44df120d69b6102b7b1f702c8b917cd3 (diff)
downloadcraftbukkit-7691c87df6ae10249dfc618feab7be21b966f4cb.tar
craftbukkit-7691c87df6ae10249dfc618feab7be21b966f4cb.tar.gz
craftbukkit-7691c87df6ae10249dfc618feab7be21b966f4cb.tar.lz
craftbukkit-7691c87df6ae10249dfc618feab7be21b966f4cb.tar.xz
craftbukkit-7691c87df6ae10249dfc618feab7be21b966f4cb.zip
SPIGOT-2824: Llama Strength API
-rw-r--r--nms-patches/EntityLlama.patch20
-rw-r--r--src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java13
2 files changed, 33 insertions, 0 deletions
diff --git a/nms-patches/EntityLlama.patch b/nms-patches/EntityLlama.patch
new file mode 100644
index 00000000..c3214d7e
--- /dev/null
+++ b/nms-patches/EntityLlama.patch
@@ -0,0 +1,20 @@
+--- a/net/minecraft/server/EntityLlama.java
++++ b/net/minecraft/server/EntityLlama.java
+@@ -20,7 +20,7 @@
+ this.setSize(0.9F, 1.87F);
+ }
+
+- private void p(int i) {
++ public void p(int i) { // PAIL: private-> public, rename
+ this.datawatcher.set(EntityLlama.bG, Integer.valueOf(Math.max(1, Math.min(5, i))));
+ }
+
+@@ -30,7 +30,7 @@
+ this.p(1 + this.random.nextInt(i));
+ }
+
+- public int dL() {
++ public int dL() { // PAIL: rename
+ return ((Integer) this.datawatcher.get(EntityLlama.bG)).intValue();
+ }
+
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java
index 9dde90fa..45e17db5 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java
@@ -38,6 +38,19 @@ public class CraftLlama extends CraftChestedHorse implements Llama {
}
@Override
+ public int getStrength() {
+ return getHandle().dL();
+ }
+
+ @Override
+ public void setStrength(int strength) {
+ Preconditions.checkArgument(1 <= strength && strength <= 5, "strength must be [1,5]");
+ if (strength == getStrength()) return;
+ getHandle().p(strength);
+ getHandle().dx();
+ }
+
+ @Override
public Horse.Variant getVariant() {
return Horse.Variant.LLAMA;
}