/**
* Removes the given amount of items from the given player inventory. Scans through multiple inventory slots if needed.
*
* @param inv - {@link net.minecraft.entity.player.InventoryPlayer Player inventory} to interact with.
* @param item - {@link net.minecraft.item.Item Item type} to remove.
* @param meta - Item metadata; set to {@code -1} to disregard item metadata.
* @param qty - Number of items to remove.
*/
private static void removeItemsFromPlayer(InventoryPlayer inv, Item item, int meta, int qty){
for(int i=0; i<inv.mainInventory.length; ++i){
ItemStack stack = inv.mainInventory[i];
if (stack == null) {
continue;
}
if(stack.getItem().equals(item)){
if(stack.getItemDamage() == meta || meta == -1){
if(stack.stackSize <= qty){
qty -= stack.stackSize;
inv.removeStackFromSlot(i);
}else{
stack.stackSize -= qty;
inv.setInventorySlotContents(i, stack);
return;
}
}
}
}
}
BlockSurveyFlag.java 文件源码
java
阅读 23
收藏 0
点赞 0
评论 0
项目:OpenFlexiTrack
作者:
评论列表
文章目录