001 package net.minecraft.src; 002 003 import cpw.mods.fml.common.Side; 004 import cpw.mods.fml.common.asm.SideOnly; 005 006 public interface IBlockAccess 007 { 008 /** 009 * Returns the block ID at coords x,y,z 010 */ 011 int getBlockId(int var1, int var2, int var3); 012 013 /** 014 * Returns the TileEntity associated with a given block in X,Y,Z coordinates, or null if no TileEntity exists 015 */ 016 TileEntity getBlockTileEntity(int var1, int var2, int var3); 017 018 @SideOnly(Side.CLIENT) 019 020 /** 021 * Any Light rendered on a 1.8 Block goes through here 022 */ 023 int getLightBrightnessForSkyBlocks(int var1, int var2, int var3, int var4); 024 025 @SideOnly(Side.CLIENT) 026 float getBrightness(int var1, int var2, int var3, int var4); 027 028 @SideOnly(Side.CLIENT) 029 030 /** 031 * Returns how bright the block is shown as which is the block's light value looked up in a lookup table (light 032 * values aren't linear for brightness). Args: x, y, z 033 */ 034 float getLightBrightness(int var1, int var2, int var3); 035 036 /** 037 * Returns the block metadata at coords x,y,z 038 */ 039 int getBlockMetadata(int var1, int var2, int var3); 040 041 /** 042 * Returns the block's material. 043 */ 044 Material getBlockMaterial(int var1, int var2, int var3); 045 046 @SideOnly(Side.CLIENT) 047 048 /** 049 * Returns true if the block at the specified coordinates is an opaque cube. Args: x, y, z 050 */ 051 boolean isBlockOpaqueCube(int var1, int var2, int var3); 052 053 /** 054 * Indicate if a material is a normal solid opaque cube. 055 */ 056 boolean isBlockNormalCube(int var1, int var2, int var3); 057 058 @SideOnly(Side.CLIENT) 059 060 /** 061 * Returns true if the block at the specified coordinates is empty 062 */ 063 boolean isAirBlock(int var1, int var2, int var3); 064 065 @SideOnly(Side.CLIENT) 066 067 /** 068 * Gets the biome for a given set of x/z coordinates 069 */ 070 BiomeGenBase getBiomeGenForCoords(int var1, int var2); 071 072 @SideOnly(Side.CLIENT) 073 074 /** 075 * Returns current world height. 076 */ 077 int getHeight(); 078 079 @SideOnly(Side.CLIENT) 080 081 /** 082 * set by !chunk.getAreLevelsEmpty 083 */ 084 boolean extendedLevelsInChunkCache(); 085 086 @SideOnly(Side.CLIENT) 087 088 /** 089 * Returns true if the block at the given coordinate has a solid (buildable) top surface. 090 */ 091 boolean doesBlockHaveSolidTopSurface(int var1, int var2, int var3); 092 093 Vec3Pool func_82732_R(); 094 095 /** 096 * Is this block powering in the specified direction Args: x, y, z, direction 097 */ 098 boolean isBlockProvidingPowerTo(int var1, int var2, int var3, int var4); 099 }