ItemStackを持っていて、プレーヤーから削除しようとしています。以前はこれをうまく試しましたが、今は; 運がない。私は試した:
player.remove(new ItemStack(Material.COAL, 2));
そして私もこれをやろうとしました:
ItemStack itemStack = new ItemStack(Material.COAL);
player.remove(itemStack);
私は解決策を見つけました、そしてこの静的な方法はそれを素晴らしくします。
public static void removeInventoryItems(PlayerInventory inv, Material type, int amount) {
for (ItemStack is : inv.getContents()) {
if (is != null && is.getType() == type) {
int newamount = is.getAmount() - amount;
if (newamount > 0) {
is.setAmount(newamount);
break;
} else {
inv.remove(is);
amount = -newamount;
if (amount == 0) break;
}
}
}
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加