コード例 #1
0
  /** Called when the block is placed in the world. */
  public void onBlockPlacedBy(World world, int i, int j, int k, EntityLiving par5EntityLiving) {
    TileCandyMaker tile = (TileCandyMaker) world.getBlockTileEntity(i, j, k);

    if (tile != null) {
      tile.checkRedstonePower();
    }
    int var6 =
        MathHelper.floor_double((double) (par5EntityLiving.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3;

    if (var6 == 0) {
      world.setBlockMetadataWithNotify(i, j, k, 2);
    }

    if (var6 == 1) {
      world.setBlockMetadataWithNotify(i, j, k, 5);
    }

    if (var6 == 2) {
      world.setBlockMetadataWithNotify(i, j, k, 3);
    }

    if (var6 == 3) {
      world.setBlockMetadataWithNotify(i, j, k, 4);
    }
  }
コード例 #2
0
  @Override
  public void onNeighborBlockChange(World world, int i, int j, int k, int l) {
    TileCandyMaker tile = (TileCandyMaker) world.getBlockTileEntity(i, j, k);

    if (tile != null) {
      tile.checkRedstonePower();
    }
  }
コード例 #3
0
  /** Called whenever the block is added into the world. Args: world, x, y, z */
  public void onBlockAdded(World world, int i, int j, int k) {
    super.onBlockAdded(world, i, j, k);
    TileCandyMaker tile = (TileCandyMaker) world.getBlockTileEntity(i, j, k);

    if (tile != null) {
      tile.checkRedstonePower();
    }
  }
コード例 #4
0
  @Override
  public void randomDisplayTick(World world, int i, int j, int k, Random random) {
    TileCandyMaker tile = (TileCandyMaker) world.getBlockTileEntity(i, j, k);

    if (!tile.canWork()) return;

    float f = (float) i + 0.5F;
    float f1 = (float) j + 0.0F + (random.nextFloat() * 6F) / 16F;
    float f2 = (float) k + 0.5F;
    float f3 = 0.52F;
    float f4 = random.nextFloat() * 0.6F - 0.3F;

    world.spawnParticle("reddust", f - f3, f1, f2 + f4, 0.0D, 0.0D, 0.0D);
    world.spawnParticle("reddust", f + f3, f1, f2 + f4, 0.0D, 0.0D, 0.0D);
    world.spawnParticle("reddust", f + f4, f1, f2 - f3, 0.0D, 0.0D, 0.0D);
    world.spawnParticle("reddust", f + f4, f1, f2 + f3, 0.0D, 0.0D, 0.0D);
  }