Há um tempo atrás o @MrPowerGamerBR estava "tentando" fazer quando um cacto crescesse, o item iria direto para o baú.

Com esse sistema o cacto ira procurar em um raio de 20 blocos, um funil, se acha o item e diretamente depositado para o cacto.

Simples, e fácil. 


for(World w : Bukkit.getWorlds()) {
for(Entity e : w.getEntities()) {
if(e instanceof Item) {

Item i = (Item) e;

Location l = i.getLocation();
for (int x = 20 * -1; x <= 20; x++) {
for (int y = 20 * -1; y <= 20; y++) {
for (int z = 20 * -1; z <= 20; z++) {

Block b = l.getWorld().getBlockAt(l.getBlockX() + x, l.getBlockY() + y,
l.getBlockZ() + z);

if(b.getType() != Material.AIR && b.getTypeId() != 0) {

if(i.getItemStack().getType() == Material.CACTUS) {
if(b.getType() == Material.HOPPER) {
Hopper h = (Hopper) b.getState();
if(h.getInventory().firstEmpty() != -1) {
h.getInventory().addItem(i.getItemStack());
i.remove();

return;
}
}

}
}
}
}
}
}
}
}


Créditos: _Kurimatzu_

ESTE SITE FOI CRIADO USANDO