package net.minecraft.world; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.material.Material; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.Vec3Pool; import net.minecraft.world.biome.BiomeGenBase; public interface IBlockAccess { /** * Returns the block ID at coords x,y,z */ int getBlockId(int var1, int var2, int var3); /** * Returns the TileEntity associated with a given block in X,Y,Z coordinates, or null if no TileEntity exists */ TileEntity getBlockTileEntity(int var1, int var2, int var3); @SideOnly(Side.CLIENT) /** * Any Light rendered on a 1.8 Block goes through here */ int getLightBrightnessForSkyBlocks(int var1, int var2, int var3, int var4); @SideOnly(Side.CLIENT) float getBrightness(int var1, int var2, int var3, int var4); @SideOnly(Side.CLIENT) /** * Returns how bright the block is shown as which is the block's light value looked up in a lookup table (light * values aren't linear for brightness). Args: x, y, z */ float getLightBrightness(int var1, int var2, int var3); /** * Returns the block metadata at coords x,y,z */ int getBlockMetadata(int var1, int var2, int var3); /** * Returns the block's material. */ Material getBlockMaterial(int var1, int var2, int var3); @SideOnly(Side.CLIENT) /** * Returns true if the block at the specified coordinates is an opaque cube. Args: x, y, z */ boolean isBlockOpaqueCube(int var1, int var2, int var3); /** * Indicate if a material is a normal solid opaque cube. */ boolean isBlockNormalCube(int var1, int var2, int var3); @SideOnly(Side.CLIENT) /** * Returns true if the block at the specified coordinates is empty */ boolean isAirBlock(int var1, int var2, int var3); @SideOnly(Side.CLIENT) /** * Gets the biome for a given set of x/z coordinates */ BiomeGenBase getBiomeGenForCoords(int var1, int var2); @SideOnly(Side.CLIENT) /** * Returns current world height. */ int getHeight(); @SideOnly(Side.CLIENT) /** * set by !chunk.getAreLevelsEmpty */ boolean extendedLevelsInChunkCache(); @SideOnly(Side.CLIENT) /** * Returns true if the block at the given coordinate has a solid (buildable) top surface. */ boolean doesBlockHaveSolidTopSurface(int var1, int var2, int var3); /** * Return the Vec3Pool object for this world. */ Vec3Pool getWorldVec3Pool(); /** * Is this block powering in the specified direction Args: x, y, z, direction */ boolean isBlockProvidingPowerTo(int var1, int var2, int var3, int var4); }