001 package net.minecraft.src; 002 003 import java.util.List; 004 005 public interface IChunkProvider 006 { 007 /** 008 * Checks to see if a chunk exists at x, y 009 */ 010 boolean chunkExists(int var1, int var2); 011 012 /** 013 * Will return back a chunk, if it doesn't exist and its not a MP client it will generates all the blocks for the 014 * specified chunk from the map seed and chunk seed 015 */ 016 Chunk provideChunk(int var1, int var2); 017 018 /** 019 * loads or generates the chunk at the chunk location specified 020 */ 021 Chunk loadChunk(int var1, int var2); 022 023 /** 024 * Populates chunk with ores etc etc 025 */ 026 void populate(IChunkProvider var1, int var2, int var3); 027 028 /** 029 * Two modes of operation: if passed true, save all Chunks in one go. If passed false, save up to two chunks. 030 * Return true if all chunks have been saved. 031 */ 032 boolean saveChunks(boolean var1, IProgressUpdate var2); 033 034 /** 035 * Unloads the 100 oldest chunks from memory, due to a bug with chunkSet.add() never being called it thinks the list 036 * is always empty and will not remove any chunks. 037 */ 038 boolean unload100OldestChunks(); 039 040 /** 041 * Returns if the IChunkProvider supports saving. 042 */ 043 boolean canSave(); 044 045 /** 046 * Converts the instance data to a readable string. 047 */ 048 String makeString(); 049 050 /** 051 * Returns a list of creatures of the specified type that can spawn at the given location. 052 */ 053 List getPossibleCreatures(EnumCreatureType var1, int var2, int var3, int var4); 054 055 /** 056 * Returns the location of the closest structure of the specified type. If not found returns null. 057 */ 058 ChunkPosition findClosestStructure(World var1, String var2, int var3, int var4, int var5); 059 060 int getLoadedChunkCount(); 061 062 void func_82695_e(int var1, int var2); 063 }