From c454c72a987b25fdfd7dd8a651f4aa4beb8b891e Mon Sep 17 00:00:00 2001 From: kashike Date: Wed, 21 Dec 2016 11:47:25 -0600 Subject: [PATCH] Add API methods to control if armour stands can move diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java index 4c615baea..52a1036fd 100644 --- a/src/main/java/net/minecraft/server/EntityArmorStand.java +++ b/src/main/java/net/minecraft/server/EntityArmorStand.java @@ -44,6 +44,7 @@ public class EntityArmorStand extends EntityLiving { public Vector3f rightArmPose; public Vector3f leftLegPose; public Vector3f rightLegPose; + public boolean canMove = true; // Paper public EntityArmorStand(World world) { super(EntityTypes.ARMOR_STAND, world); @@ -755,4 +756,13 @@ public class EntityArmorStand extends EntityLiving { public boolean de() { return false; } + + // Paper start + @Override + public void move(EnumMoveType moveType, double x, double y, double z) { + if (this.canMove) { + super.move(moveType, x, y, z); + } + } + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java index 2b66a08ad..8a06cb165 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java @@ -211,4 +211,14 @@ public class CraftArmorStand extends CraftLivingEntity implements ArmorStand { public void setMarker(boolean marker) { getHandle().setMarker(marker); } + + @Override + public boolean canMove() { + return getHandle().canMove; + } + + @Override + public void setCanMove(boolean move) { + getHandle().canMove = move; + } } -- 2.18.0