/**
     * loads or generates the chunk at the chunk location specified
     */
    public Chunk loadChunk(int x, int z)
    {
        long  chunkID = ChunkCoordIntPair.chunkXZ2Int(x, z);
        Chunk chunk   = null;

        if (!id2ChunkDic.ContainsKey(chunkID))
        {
            if (serverChunkGenerator == null)
            {
            }
            else
            {
                chunk = serverChunkGenerator.provideChunk(x, z);
            }

            id2ChunkDic.Add(chunkID, chunk);
            loadedChunks.Add(chunk);
            chunk.onChunkLoad();
            chunk.populateChunk(this, this, x, z);
        }

        chunk = (Chunk)id2ChunkDic [chunkID];

        return(chunk);
    }
Example #2
0
 public AnvilChunkLoaderPending(ChunkCoordIntPair par1ChunkCoordIntPair, NBTTagCompound par2NBTTagCompound)
 {
     Field_48427_a = par1ChunkCoordIntPair;
     Field_48426_b = par2NBTTagCompound;
 }
 /**
  * Checks to see if a chunk exists at x, z
  */
 public bool chunkExists(int x, int z)
 {
     return(id2ChunkDic.ContainsKey(ChunkCoordIntPair.chunkXZ2Int(x, z)));
 }
    /**
     * Will return back a chunk, if it doesn't exist and its not a MP client it will generates all the blocks for the
     * specified chunk from the map seed and chunk seed
     */
    public Chunk provideChunk(int x, int z)
    {
        Chunk chunk = (Chunk)id2ChunkDic [ChunkCoordIntPair.chunkXZ2Int(x, z)];

        return(chunk == null?loadChunk(x, z) : chunk);
    }