Implement Arrow tile methods

By: Parker Hawke <hawkeboyz2@hotmail.com>
This commit is contained in:
CraftBukkit/Spigot
2018-05-01 15:27:59 -04:00
parent a002698e90
commit bab7fe16a5
2 changed files with 29 additions and 0 deletions

View File

@@ -4,6 +4,7 @@ import com.google.common.base.Preconditions;
import net.minecraft.server.EntityArrow;
import org.apache.commons.lang.Validate;
import org.bukkit.block.Block;
import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.EntityType;
@@ -46,6 +47,21 @@ public class CraftArrow extends AbstractProjectile implements Arrow {
getHandle().projectileSource = shooter;
}
@Override
public boolean isInBlock() {
return getHandle().inGround;
}
@Override
public Block getAttachedBlock() {
if (!isInBlock()) {
return null;
}
EntityArrow handle = getHandle();
return getWorld().getBlockAt(handle.h, handle.at, handle.au); // PAIL: rename tileX, tileY, tileZ
}
@Override
public PickupStatus getPickupStatus() {
return PickupStatus.values()[getHandle().fromPlayer.ordinal()];