package net.minecraft.world.chunk; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.util.List; import java.util.Random; import net.minecraft.command.IEntitySelector; import net.minecraft.entity.Entity; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.EnumSkyBlock; import net.minecraft.world.World; public class EmptyChunk extends Chunk { public EmptyChunk(World par1World, int par2, int par3) { super(par1World, par2, par3); } /** * Checks whether the chunk is at the X/Z location specified */ public boolean isAtLocation(int par1, int par2) { return par1 == this.xPosition && par2 == this.zPosition; } /** * Returns the value in the height map at this x, z coordinate in the chunk */ public int getHeightValue(int par1, int par2) { return 0; } /** * Generates the initial skylight map for the chunk upon generation or load. */ public void generateSkylightMap() {} @SideOnly(Side.CLIENT) /** * Generates the height map for a chunk from scratch */ public void generateHeightMap() {} /** * Return the ID of a block in the chunk. */ public int getBlockID(int par1, int par2, int par3) { return 0; } public int getBlockLightOpacity(int par1, int par2, int par3) { return 255; } /** * Sets a blockID of a position within a chunk with metadata. Args: x, y, z, blockID, metadata */ public boolean setBlockIDWithMetadata(int par1, int par2, int par3, int par4, int par5) { return true; } /** * Sets a blockID for a position in the chunk. Args: x, y, z, blockID */ public boolean setBlockID(int par1, int par2, int par3, int par4) { return true; } /** * Return the metadata corresponding to the given coordinates inside a chunk. */ public int getBlockMetadata(int par1, int par2, int par3) { return 0; } /** * Set the metadata of a block in the chunk */ public boolean setBlockMetadata(int par1, int par2, int par3, int par4) { return false; } /** * Gets the amount of light saved in this block (doesn't adjust for daylight) */ public int getSavedLightValue(EnumSkyBlock par1EnumSkyBlock, int par2, int par3, int par4) { return 0; } /** * Sets the light value at the coordinate. If enumskyblock is set to sky it sets it in the skylightmap and if its a * block then into the blocklightmap. Args enumSkyBlock, x, y, z, lightValue */ public void setLightValue(EnumSkyBlock par1EnumSkyBlock, int par2, int par3, int par4, int par5) {} /** * Gets the amount of light on a block taking into account sunlight */ public int getBlockLightValue(int par1, int par2, int par3, int par4) { return 0; } /** * Adds an entity to the chunk. Args: entity */ public void addEntity(Entity par1Entity) {} /** * removes entity using its y chunk coordinate as its index */ public void removeEntity(Entity par1Entity) {} /** * Removes entity at the specified index from the entity array. */ public void removeEntityAtIndex(Entity par1Entity, int par2) {} /** * Returns whether is not a block above this one blocking sight to the sky (done via checking against the heightmap) */ public boolean canBlockSeeTheSky(int par1, int par2, int par3) { return false; } /** * Gets the TileEntity for a given block in this chunk */ public TileEntity getChunkBlockTileEntity(int par1, int par2, int par3) { return null; } /** * Adds a TileEntity to a chunk */ public void addTileEntity(TileEntity par1TileEntity) {} /** * Sets the TileEntity for a given block in this chunk */ public void setChunkBlockTileEntity(int par1, int par2, int par3, TileEntity par4TileEntity) {} /** * Removes the TileEntity for a given block in this chunk */ public void removeChunkBlockTileEntity(int par1, int par2, int par3) {} /** * Called when this Chunk is loaded by the ChunkProvider */ public void onChunkLoad() {} /** * Called when this Chunk is unloaded by the ChunkProvider */ public void onChunkUnload() {} /** * Sets the isModified flag for this Chunk */ public void setChunkModified() {} /** * Fills the given list of all entities that intersect within the given bounding box that aren't the passed entity * Args: entity, aabb, listToFill */ public void getEntitiesWithinAABBForEntity(Entity par1Entity, AxisAlignedBB par2AxisAlignedBB, List par3List) {} /** * Gets all entities that can be assigned to the specified class. Args: entityClass, aabb, listToFill */ public void getEntitiesOfTypeWithinAAAB(Class par1Class, AxisAlignedBB par2AxisAlignedBB, List par3List, IEntitySelector par4IEntitySelector) {} /** * Returns true if this Chunk needs to be saved */ public boolean needsSaving(boolean par1) { return false; } public Random getRandomWithSeed(long par1) { return new Random(this.worldObj.getSeed() + (long)(this.xPosition * this.xPosition * 4987142) + (long)(this.xPosition * 5947611) + (long)(this.zPosition * this.zPosition) * 4392871L + (long)(this.zPosition * 389711) ^ par1); } public boolean isEmpty() { return true; } /** * Returns whether the ExtendedBlockStorages containing levels (in blocks) from arg 1 to arg 2 are fully empty * (true) or not (false). */ public boolean getAreLevelsEmpty(int par1, int par2) { return true; } }