package joshie.harvest.mining.gen; import joshie.harvest.core.HFTrackers; import net.minecraft.init.Biomes; import net.minecraft.util.math.BlockPos; import net.minecraft.world.DimensionType; import net.minecraft.world.WorldProvider; import net.minecraft.world.biome.BiomeProviderSingle; import net.minecraft.world.chunk.IChunkGenerator; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import javax.annotation.Nonnull; import static joshie.harvest.mining.HFMining.MINE_WORLD; public class MiningProvider extends WorldProvider { @Override public void createBiomeProvider() { biomeProvider = new BiomeProviderSingle(Biomes.VOID); hasNoSky = true; } @Override @Nonnull public IChunkGenerator createChunkGenerator() { return new MiningChunk(worldObj, worldObj.getSeed()); } @Override @Nonnull public BlockPos getSpawnCoordinate() { return getSpawnCoordinateForMine(0, 1); } public BlockPos getSpawnCoordinateForMine(int mineID, int floor) { return HFTrackers.getMineManager(worldObj).getSpawnCoordinateForMine(worldObj, mineID, floor); } public boolean areCoordinatesGenerated(int mineID, int floor) { return MineManager.areCoordinatesGenerated(worldObj, mineID, floor); } public void onTeleportToMine(int mineID) { HFTrackers.getMineManager(worldObj).onTeleportToMine(worldObj, mineID); } @SideOnly(Side.CLIENT) public boolean isSkyColored() { return false; } @Override public boolean canRespawnHere() { return false; } @Override public boolean isSurfaceWorld() { return false; } @Override @Nonnull public DimensionType getDimensionType() { return MINE_WORLD; } }