net.minecraft.item.ItemStack.setItemDamage()方法的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(7.0k)|赞(0)|评价(0)|浏览(134)

本文整理了Java中net.minecraft.item.ItemStack.setItemDamage()方法的一些代码示例,展示了ItemStack.setItemDamage()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ItemStack.setItemDamage()方法的具体详情如下:
包路径:net.minecraft.item.ItemStack
类名称:ItemStack
方法名:setItemDamage

ItemStack.setItemDamage介绍

暂无

代码示例

代码示例来源:origin: Vazkii/Botania

@Nonnull
@Override
public ItemStack getContainerItem(@Nonnull ItemStack itemStack) {
  ItemStack stack = itemStack.copy();
  stack.setItemDamage(stack.getItemDamage() + 1);
  return stack;
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onUpdate(ItemStack par1ItemStack, World world, Entity par3Entity, int par4, boolean par5) {
  if(par1ItemStack.isItemDamaged())
    par1ItemStack.setItemDamage(par1ItemStack.getItemDamage() - 1);
}

代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2

@Override
public ItemStack getContainerItem( final ItemStack itemStack )
{
  ItemStack copy = itemStack.copy();
  copy.setItemDamage( itemStack.getItemDamage() + 1 );
  return copy;
}

代码示例来源:origin: Vazkii/Botania

@Nonnull
@Override
public ActionResult<ItemStack> onItemRightClick(World world, EntityPlayer player, @Nonnull EnumHand hand) {
  ItemStack stack = player.getHeldItem(hand);
  int dmg = stack.getItemDamage();
  stack.setItemDamage(~dmg & 1);
  world.playSound(null, player.posX, player.posY, player.posZ, SoundEvents.ENTITY_EXPERIENCE_ORB_PICKUP, SoundCategory.NEUTRAL, 0.3F, 0.1F);
  return ActionResult.newResult(EnumActionResult.SUCCESS, stack);
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onUpdate(ItemStack stack, World world, Entity player, int par4, boolean par5) {
  if(!world.isRemote && player instanceof EntityPlayer && stack.getItemDamage() > 0 && ManaItemHandler.requestManaExactForTool(stack, (EntityPlayer) player, MANA_PER_DAMAGE * 2, true))
    stack.setItemDamage(stack.getItemDamage() - 1);
}

代码示例来源:origin: Vazkii/Botania

@Nonnull
@Override
public ItemStack onItemUseFinish(@Nonnull ItemStack par1ItemStack, World world, EntityLivingBase living) {
  randomEffect(living, par1ItemStack);
  par1ItemStack.setItemDamage(par1ItemStack.getItemDamage() + 1);
  randomSeed(par1ItemStack);
  if(par1ItemStack.getItemDamage() == 6)
    return new ItemStack(Items.GLASS_BOTTLE);
  return par1ItemStack;
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onUpdate(ItemStack stack, World world, Entity player, int par4, boolean par5) {
  if(!world.isRemote && player instanceof EntityPlayer && stack.getItemDamage() > 0 && ManaItemHandler.requestManaExactForTool(stack, (EntityPlayer) player, MANA_PER_DAMAGE * 2, true))
    stack.setItemDamage(stack.getItemDamage() - 1);
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onArmorTick(World world, EntityPlayer player, ItemStack stack) {
  if(!world.isRemote && stack.getItemDamage() > 0 && ManaItemHandler.requestManaExact(stack, player, MANA_PER_DAMAGE * 2, true))
    stack.setItemDamage(stack.getItemDamage() - 1);
}

代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2

private void setProgress( final ItemStack is, final int newDamage )
{
  final NBTTagCompound comp = Platform.openNbtData( is );
  comp.setInteger( "progress", newDamage );
  is.setItemDamage( is.getItemDamage() / LEVEL_OFFSET * LEVEL_OFFSET );
}

代码示例来源:origin: Vazkii/Botania

@Override
public void addMana(ItemStack stack, int mana) {
  setMana(stack, Math.min(getMana(stack) + mana, getMaxMana(stack)));
  stack.setItemDamage(getDamage(stack));
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onUpdate(ItemStack stack, World world, Entity player, int par4, boolean par5) {
  if(!world.isRemote && player instanceof EntityPlayer && stack.getItemDamage() > 0 && ManaItemHandler.requestManaExactForTool(stack, (EntityPlayer) player, MANA_PER_DAMAGE * 2, true))
    stack.setItemDamage(stack.getItemDamage() - 1);
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onUpdate(ItemStack stack, World world, Entity player, int par4, boolean par5) {
  if(!world.isRemote && player instanceof EntityPlayer && stack.getItemDamage() > 0 && ManaItemHandler.requestManaExactForTool(stack, (EntityPlayer) player, MANA_PER_DAMAGE * 2, true))
    stack.setItemDamage(stack.getItemDamage() - 1);
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onArmorTick(World world, EntityPlayer player, ItemStack stack) {
  if(!world.isRemote && stack.getItemDamage() > 0 && ManaItemHandler.requestManaExact(stack, player, MANA_PER_DAMAGE * 2, true))
    stack.setItemDamage(stack.getItemDamage() - 1);
}

代码示例来源:origin: Vazkii/Botania

@Nonnull
@Override
public ActionResult<ItemStack> onItemRightClick(World world, EntityPlayer player, @Nonnull EnumHand hand) {
  ItemStack stack = player.getHeldItem(hand);
  if(getBlock(stack) != null && player.isSneaking()) {
    int dmg = stack.getItemDamage();
    stack.setItemDamage(~dmg & 1);
    player.playSound(SoundEvents.ENTITY_EXPERIENCE_ORB_PICKUP, 0.3F, 0.1F);
    return ActionResult.newResult(EnumActionResult.SUCCESS, stack);
  }
  return ActionResult.newResult(EnumActionResult.PASS, stack);
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onUpdate(ItemStack stack, World world, Entity entity, int something, boolean somethingelse) {
  if(!world.isRemote) {
    int x = MathHelper.floor(entity.posX);
    int z = MathHelper.floor(entity.posZ);
    boolean slime = SubTileNarslimmus.isSlimeChunk(world, x, z);
    int meta = stack.getItemDamage();
    int newMeta = slime ? 1 : 0;
    if(meta != newMeta)
      stack.setItemDamage(newMeta);
  }
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onUpdate(ItemStack stack, World world, Entity player, int par4, boolean par5) {
  if(!world.isRemote && player instanceof EntityPlayer && stack.getItemDamage() > 0 && ManaItemHandler.requestManaExactForTool(stack, (EntityPlayer) player, getManaPerDamage() * 2, true))
    stack.setItemDamage(stack.getItemDamage() - 1);
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onUpdate(ItemStack stack, World world, Entity player, int par4, boolean par5) {
  if(!world.isRemote && player instanceof EntityPlayer && stack.getItemDamage() > 0 && ManaItemHandler.requestManaExactForTool(stack, (EntityPlayer) player, getManaPerDamage() * 2, true))
    stack.setItemDamage(stack.getItemDamage() - 1);
}

代码示例来源:origin: Vazkii/Botania

@SideOnly(Side.CLIENT)
public void renderItemAtLinePos(IGuiLexiconEntry gui, int offset, int pos, int yPos, ItemStack stack) {
  if(stack.isEmpty())
    return;
  stack = stack.copy();
  if(stack.getItemDamage() == Short.MAX_VALUE)
    stack.setItemDamage(0);
  int xPos = gui.getLeft() + (pos == -1 ? gui.getWidth() / 2 - 8 : pos * 18) + offset;
  ItemStack stack1 = stack.copy();
  if(stack1.getItemDamage() == -1)
    stack1.setItemDamage(0);
  renderItem(gui, xPos, yPos, stack1, false);
}

代码示例来源:origin: Vazkii/Botania

@SideOnly(Side.CLIENT)
public void renderItemAtAngle(IGuiLexiconEntry gui, float angle, ItemStack stack) {
  if(stack.isEmpty())
    return;
  ItemStack workStack = stack.copy();
  if(workStack.getItemDamage() == Short.MAX_VALUE || workStack.getItemDamage() == -1)
    workStack.setItemDamage(0);
  angle -= 90;
  int radius = 32;
  double xPos = gui.getLeft() + Math.cos(angle * Math.PI / 180D) * radius + gui.getWidth() / 2 - 8;
  double yPos = gui.getTop() + Math.sin(angle * Math.PI / 180D) * radius + 53;
  renderItem(gui, xPos, yPos, workStack, false);
}

代码示例来源:origin: Vazkii/Botania

@Override
public void onEquipped(ItemStack stack, EntityLivingBase player) {
  super.onEquipped(stack, player);
  if(stack.getItemDamage() != WING_TYPES && StringObfuscator.matchesHash(stack.getDisplayName(), SUPER_AWESOME_HASH)) {
    stack.setItemDamage(WING_TYPES);
    stack.getTagCompound().removeTag("display");
  }
}

相关文章

微信公众号

最新文章

更多

ItemStack类方法