FortuneBlockBreakAPI - Pegando o número de drops de um bloco ao ser quebrado com uma picareta de fortuna.


Requer NMS, então você terá que usar Reflection caso você queira que funcione em várias versões do Minecraft sem precisar alterar o código.

Criar um Random estático em vez de usar new Random() também seria bom para economizar memória e CPU.


public static int getDropCount(int enchantmentLevel, Block block) {
if (block.getType().name().contains("ORE")) {
net.minecraft.server.v1_7_R4.BlockOre nmsBlock = (BlockOre) CraftMagicNumbers.getBlock(block);
Random rand = new Random();

if(enchantmentLevel > 0 && Item.getItemOf(nmsBlock) != nmsBlock.getDropType(0, rand, enchantmentLevel)) {
int j = rand.nextInt(enchantmentLevel + 2) - 1;
if(j < 0) {
j = 0;
}

return nmsBlock.a(rand) * (j + 1);
} else {
return nmsBlock.a(rand);
}
} else {
return 1;
}
}
ESTE SITE FOI CRIADO USANDO