Search in sources :

Example 66 with Biome

use of net.minecraft.world.biome.Biome in project Realistic-Terrain-Generation by Team-RTG.

the class MapGenScatteredFeatureRTG method canSpawnStructureAtCoords.

@Override
protected boolean canSpawnStructureAtCoords(int chunkX, int chunkZ) {
    int i = chunkX;
    int j = chunkZ;
    if (chunkX < 0) {
        chunkX -= this.maxDistanceBetweenScatteredFeatures - 1;
    }
    if (chunkZ < 0) {
        chunkZ -= this.maxDistanceBetweenScatteredFeatures - 1;
    }
    int k = chunkX / this.maxDistanceBetweenScatteredFeatures;
    int l = chunkZ / this.maxDistanceBetweenScatteredFeatures;
    Random random = this.world.setRandomSeed(k, l, 14357617);
    k *= this.maxDistanceBetweenScatteredFeatures;
    l *= this.maxDistanceBetweenScatteredFeatures;
    k += random.nextInt(this.maxDistanceBetweenScatteredFeatures - this.minDistanceBetweenScatteredFeatures);
    l += random.nextInt(this.maxDistanceBetweenScatteredFeatures - this.minDistanceBetweenScatteredFeatures);
    if (i == k && j == l) {
        BlockPos pos = new BlockPos(i * 16 + 8, 0, j * 16 + 8);
        Biome biome = this.world.getBiomeProvider().getBiome(pos);
        if (null == biome) {
            Logger.error("MapGenScatteredFeatureRTG#canSpawnStructureAtCoords received a null biome at %d %d.", pos.getX(), pos.getZ());
            return false;
        }
        //Desert temple.
        if (canSpawnDesertTemple(biome)) {
            return true;
        }
        //Jungle temple.
        if (canSpawnJungleTemple(biome)) {
            return true;
        }
        //Witch hut.
        if (canSpawnWitchHut(biome)) {
            return true;
        }
        //Igloo.
        if (canSpawnIgloo(biome)) {
            return true;
        }
    }
    return false;
}
Also used : Biome(net.minecraft.world.biome.Biome) BlockPos(net.minecraft.util.math.BlockPos)

Aggregations

Biome (net.minecraft.world.biome.Biome)66 BlockPos (net.minecraft.util.math.BlockPos)17 IBlockState (net.minecraft.block.state.IBlockState)8 World (net.minecraft.world.World)5 WorldServer (net.minecraft.world.WorldServer)5 Random (java.util.Random)4 Block (net.minecraft.block.Block)4 ChunkPos (net.minecraft.util.math.ChunkPos)4 ResourceLocation (net.minecraft.util.ResourceLocation)3 List (java.util.List)2 ChunkProviderSettings (net.minecraft.world.gen.ChunkProviderSettings)2 ChunkGeneratorEvent (net.minecraftforge.event.terraingen.ChunkGeneratorEvent)2 NetherExBiomeType (nex.world.biome.NetherExBiomeType)2 Pair (org.apache.commons.lang3.tuple.Pair)2 IRealisticBiome (rtg.api.world.biome.IRealisticBiome)2 RealisticBiomeBase (rtg.world.biome.realistic.RealisticBiomeBase)2 Gson (com.google.gson.Gson)1 BlockSurfacePos (ivorius.ivtoolkit.blocks.BlockSurfacePos)1 IvVecMathHelper (ivorius.ivtoolkit.math.IvVecMathHelper)1 RCConfig (ivorius.reccomplex.RCConfig)1