コード例 #1
0
  public boolean interact(
      World world,
      BlockPosition blockposition,
      IBlockData iblockdata,
      EntityHuman entityhuman,
      EnumHand enumhand,
      EnumDirection enumdirection,
      float f,
      float f1,
      float f2) {
    ItemStack itemstack = entityhuman.b(enumhand);

    if (!itemstack.isEmpty()
        && (itemstack.getItem() == Items.FLINT_AND_STEEL
            || itemstack.getItem() == Items.FIRE_CHARGE)) {
      this.a(
          world,
          blockposition,
          iblockdata.set(BlockTNT.EXPLODE, Boolean.valueOf(true)),
          (EntityLiving) entityhuman);
      world.setTypeAndData(blockposition, Blocks.AIR.getBlockData(), 11);
      if (itemstack.getItem() == Items.FLINT_AND_STEEL) {
        itemstack.damage(1, entityhuman);
      } else if (!entityhuman.abilities.canInstantlyBuild) {
        itemstack.subtract(1);
      }

      return true;
    } else {
      return super.interact(
          world, blockposition, iblockdata, entityhuman, enumhand, enumdirection, f, f1, f2);
    }
  }