本文整理汇总了Java中net.minecraft.init.Items.bucket方法的典型用法代码示例。如果您正苦于以下问题:Java Items.bucket方法的具体用法?Java Items.bucket怎么用?Java Items.bucket使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类net.minecraft.init.Items
的用法示例。
在下文中一共展示了Items.bucket方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: onItemUseFinish
import net.minecraft.init.Items; //导入方法依赖的package包/类
/**
* Called when the player finishes using this Item (E.g. finishes eating.). Not called when the player stops using
* the Item before the action is complete.
*/
public ItemStack onItemUseFinish(ItemStack stack, World worldIn, EntityPlayer playerIn)
{
if (!playerIn.capabilities.isCreativeMode)
{
--stack.stackSize;
}
if (!worldIn.isRemote)
{
playerIn.clearActivePotions();
}
playerIn.triggerAchievement(StatList.objectUseStats[Item.getIdFromItem(this)]);
return stack.stackSize <= 0 ? new ItemStack(Items.bucket) : stack;
}
示例2: interact
import net.minecraft.init.Items; //导入方法依赖的package包/类
/**
* Called when a player interacts with a mob. e.g. gets milk from a cow, gets into the saddle on a pig.
*/
public boolean interact(EntityPlayer player)
{
ItemStack itemstack = player.inventory.getCurrentItem();
if (itemstack != null && itemstack.getItem() == Items.bucket && !player.capabilities.isCreativeMode && !this.isChild())
{
if (itemstack.stackSize-- == 1)
{
player.inventory.setInventorySlotContents(player.inventory.currentItem, new ItemStack(Items.milk_bucket));
}
else if (!player.inventory.addItemStackToInventory(new ItemStack(Items.milk_bucket)))
{
player.dropPlayerItemWithRandomChoice(new ItemStack(Items.milk_bucket, 1, 0), false);
}
return true;
}
else
{
return super.interact(player);
}
}
示例3: smeltItem
import net.minecraft.init.Items; //导入方法依赖的package包/类
/**
* Turn one item from the furnace source stack into the appropriate smelted item in the furnace result stack
*/
public void smeltItem()
{
if (this.canSmelt())
{
ItemStack itemstack = FurnaceRecipes.instance().getSmeltingResult(this.furnaceItemStacks[0]);
if (this.furnaceItemStacks[2] == null)
{
this.furnaceItemStacks[2] = itemstack.copy();
}
else if (this.furnaceItemStacks[2].getItem() == itemstack.getItem())
{
++this.furnaceItemStacks[2].stackSize;
}
if (this.furnaceItemStacks[0].getItem() == Item.getItemFromBlock(Blocks.sponge) && this.furnaceItemStacks[0].getMetadata() == 1 && this.furnaceItemStacks[1] != null && this.furnaceItemStacks[1].getItem() == Items.bucket)
{
this.furnaceItemStacks[1] = new ItemStack(Items.water_bucket);
}
--this.furnaceItemStacks[0].stackSize;
if (this.furnaceItemStacks[0].stackSize <= 0)
{
this.furnaceItemStacks[0] = null;
}
}
}
示例4: canExtractItem
import net.minecraft.init.Items; //导入方法依赖的package包/类
/**
* Returns true if automation can extract the given item in the given slot from the given side. Args: slot, item,
* side
*/
public boolean canExtractItem(int index, ItemStack stack, EnumFacing direction)
{
if (direction == EnumFacing.DOWN && index == 1)
{
Item item = stack.getItem();
if (item != Items.water_bucket && item != Items.bucket)
{
return false;
}
}
return true;
}
示例5: isItemUsedInRecipe
import net.minecraft.init.Items; //导入方法依赖的package包/类
public static boolean isItemUsedInRecipe(ItemStack itemStack) {
Item[] itemsUsed = new Item[] { Items.bucket };
for(Item item : itemsUsed)
if(item == itemStack.getItem())
return true;
return false;
}
示例6: burnInventory
import net.minecraft.init.Items; //导入方法依赖的package包/类
/** Consume fuel from the player's inventory.<br>
* Take it first from their cache, if present, and then from their inventory, starting
* at the first slot and working upwards.
* @param player
* @param burnAmount amount of fuel to burn, in ticks.
*/
public static void burnInventory(EntityPlayerMP player, int burnAmount, ItemStack input)
{
if (!fuelCaches.containsKey(player))
fuelCaches.put(player, -burnAmount);
else
fuelCaches.put(player, fuelCaches.get(player) - burnAmount);
int index = 0;
while (fuelCaches.get(player) < 0 && index < player.inventory.mainInventory.length)
{
ItemStack is = player.inventory.mainInventory[index];
if (is != null)
{
int burnTime = TileEntityFurnace.getItemBurnTime(is);
if (burnTime != 0)
{
// Consume item:
if (is.stackSize > 1)
is.stackSize--;
else
{
// If this is a bucket of lava, we need to consume the lava but leave the bucket.
if (is.getItem() == Items.lava_bucket)
{
// And if we're cooking wet sponge, we need to leave the bucket filled with water.
if (input.getItem() == Item.getItemFromBlock(Blocks.sponge) && input.getMetadata() == 1)
player.inventory.mainInventory[index] = new ItemStack(Items.water_bucket);
else
player.inventory.mainInventory[index] = new ItemStack(Items.bucket);
}
else
player.inventory.mainInventory[index] = null;
index++;
}
fuelCaches.put(player, fuelCaches.get(player) + burnTime);
}
else
index++;
}
else
index++;
}
}
示例7: onItemRightClick
import net.minecraft.init.Items; //导入方法依赖的package包/类
/**
* Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer
*/
public ItemStack onItemRightClick(ItemStack itemStackIn, World worldIn, EntityPlayer playerIn)
{
boolean flag = this.isFull == Blocks.air;
MovingObjectPosition movingobjectposition = this.getMovingObjectPositionFromPlayer(worldIn, playerIn, flag);
if (movingobjectposition == null)
{
return itemStackIn;
}
else
{
if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK)
{
BlockPos blockpos = movingobjectposition.getBlockPos();
if (!worldIn.isBlockModifiable(playerIn, blockpos))
{
return itemStackIn;
}
if (flag)
{
if (!playerIn.canPlayerEdit(blockpos.offset(movingobjectposition.sideHit), movingobjectposition.sideHit, itemStackIn))
{
return itemStackIn;
}
IBlockState iblockstate = worldIn.getBlockState(blockpos);
Material material = iblockstate.getBlock().getMaterial();
if (material == Material.water && ((Integer)iblockstate.getValue(BlockLiquid.LEVEL)).intValue() == 0)
{
worldIn.setBlockToAir(blockpos);
playerIn.triggerAchievement(StatList.objectUseStats[Item.getIdFromItem(this)]);
return this.fillBucket(itemStackIn, playerIn, Items.water_bucket);
}
if (material == Material.lava && ((Integer)iblockstate.getValue(BlockLiquid.LEVEL)).intValue() == 0)
{
worldIn.setBlockToAir(blockpos);
playerIn.triggerAchievement(StatList.objectUseStats[Item.getIdFromItem(this)]);
return this.fillBucket(itemStackIn, playerIn, Items.lava_bucket);
}
}
else
{
if (this.isFull == Blocks.air)
{
return new ItemStack(Items.bucket);
}
BlockPos blockpos1 = blockpos.offset(movingobjectposition.sideHit);
if (!playerIn.canPlayerEdit(blockpos1, movingobjectposition.sideHit, itemStackIn))
{
return itemStackIn;
}
if (this.tryPlaceContainedLiquid(worldIn, blockpos1) && !playerIn.capabilities.isCreativeMode)
{
playerIn.triggerAchievement(StatList.objectUseStats[Item.getIdFromItem(this)]);
return new ItemStack(Items.bucket);
}
}
}
return itemStackIn;
}
}
示例8: canExtractItem
import net.minecraft.init.Items; //导入方法依赖的package包/类
@Override
public boolean canExtractItem(int side, ItemStack itemStack, int par3) {
return par3 != 0 || side != 1 || itemStack.getItem() == Items.bucket;
}
示例9: isBucket
import net.minecraft.init.Items; //导入方法依赖的package包/类
public static boolean isBucket(ItemStack stack)
{
return stack != null && stack.getItem() != null && stack.getItem() == Items.bucket;
}