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

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

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

Item.setDamage介绍

暂无

代码示例

代码示例来源:origin: SleepyTrousers/EnderIO

@Override
public void setDamage(@Nonnull ItemStack stack, int newDamage) {
 int oldDamage = getDamage(stack);
 if (newDamage <= oldDamage) {
  super.setDamage(stack, newDamage);
 } else {
  int damage = newDamage - oldDamage;
  if (!absorbDamageWithEnergy(stack, damage * DarkSteelConfig.handEnergyPerDamage.get())) {
   super.setDamage(stack, newDamage);
  }
 }
}

代码示例来源:origin: SleepyTrousers/EnderIO

@Override
public void setDamage(@Nonnull ItemStack stack, int newDamage) {
 int oldDamage = getDamage(stack);
 if (newDamage <= oldDamage) {
  super.setDamage(stack, newDamage);
 } else {
  int damage = newDamage - oldDamage;
  if (!absorbDamageWithEnergy(stack, damage * DarkSteelConfig.tapEnergyPerDamage.get())) {
   super.setDamage(stack, newDamage);
  }
 }
}

代码示例来源:origin: vadis365/TheErebus

@Override
public void onEntityCollidedWithBlock(World world, BlockPos pos, IBlockState state, Entity entity) {
  TileEntityErebusAltarRepair te = Utils.getTileEntity(world, pos, TileEntityErebusAltarRepair.class);
  double offsetY = 0.9D;
  if (entity instanceof EntityItem && entity.getEntityBoundingBox().minY >= pos.getY() + offsetY && te.active) {
    te.setCollisions(te.getCollisions() + 1);
    ItemStack is = ((EntityItem) entity).getItem();
    entity.posY = pos.getY() + 1.6D;
    int repairDamage = is.getItemDamage();
    if (is.isItemStackDamageable() && repairDamage > 0) {
      if (te.notUsed)
        te.setSpawnTicks(160);
      if (te.getSpawnTicks() == 60 && te.getCollisions() == 101) {
        world.playSound((EntityPlayer)null, pos, SoundEvents.BLOCK_ANVIL_USE, SoundCategory.BLOCKS, 0.2F, 1.0F);
        is.getItem().setDamage(is, -repairDamage);
      }
      if (te.getSpawnTicks() % 2 == 0 && te.getCollisions() < 101)
        if (world.isRemote)
          te.sparky(world, pos);
    }
    if (te.getCollisions() > 101)
      te.setSpawnTicks(0);
  }
}

相关文章

微信公众号

最新文章

更多