@Override
protected void genDecorations(Biome biomeIn, World worldIn, Random random) {
int k1 = this.treesPerChunk;
if (random.nextFloat() < this.extraTreeChance)
{
++k1;
}
if(net.minecraftforge.event.terraingen.TerrainGen.decorate(worldIn, random, chunkPos, net.minecraftforge.event.terraingen.DecorateBiomeEvent.Decorate.EventType.TREE))
for (int j2 = 0; j2 < k1; ++j2)
{
int k6 = random.nextInt(16) + 8;
int l = random.nextInt(16) + 8;
WorldGenAbstractTree worldgenabstracttree = biomeIn.getRandomTreeFeature(random);
worldgenabstracttree.setDecorationDefaults();
BlockPos blockpos = worldIn.getHeight(this.chunkPos.add(k6, 0, l));
if (worldgenabstracttree.generate(worldIn, random, blockpos))
{
worldgenabstracttree.generateSaplings(worldIn, random, blockpos);
}
}
}
java类net.minecraft.world.gen.feature.WorldGenAbstractTree的实例源码
PontusBiomeDecorator.java 文件源码
项目:harshencastle
阅读 25
收藏 0
点赞 0
评论 0
BiomeGenShadow.java 文件源码
项目:RidiculousWorld
阅读 19
收藏 0
点赞 0
评论 0
public void decorate(World world, Random rand, int chunkX, int chunkZ)
{
this.theBiomeDecorator.decorateChunk(world, rand, this, chunkX, chunkZ);
for (int j = 0; j < 3; ++j)
{
int x = chunkX + rand.nextInt(16) + 8;
int z = chunkZ + rand.nextInt(16) + 8;
/*int y = 70;
for(int wy = 80;wy > 30;wy--){
if(world.getBlock(x, wy, z) != Blocks.air){
y = wy;
break;
}
}*/
int y = world.getTopSolidOrLiquidBlock(x, z);
WorldGenAbstractTree worldgenabstracttree = func_150567_a(rand);
worldgenabstracttree.setScale(1.0D, 1.0D, 1.0D);
if (worldgenabstracttree.generate(world, rand, x, y, z))
{
worldgenabstracttree.func_150524_b(world, rand, x, y, z);
}
}
}
BiomeEndearingWoods.java 文件源码
项目:TheStuffMod
阅读 20
收藏 0
点赞 0
评论 0
@Override
public WorldGenAbstractTree func_150567_a(Random par1Random){
int i = par1Random.nextInt(11);
if(i <= 1) {return new WorldGenModTree(ModBlocks.ebonyWood, ModBlocks.ebonyLeaves, 10, 1, false);}
else if(i <= 2) {return new WorldGenModTree(ModBlocks.oliveWood, ModBlocks.oliveLeaves, 10, 1, false);}
else if(i <= 3) {return new WorldGenModTree(ModBlocks.mapleWood, ModBlocks.mapleLeaves, 10, 1, false);}
else if(i <= 4) {return new WorldGenModTree(ModBlocks.jacarandaWood, ModBlocks.jacarandaLeaves, 10, 1, false);}
else if(i <= 5) {return new WorldGenModTree(ModBlocks.rubberWood, ModBlocks.rubberLeaves, 10, 1, false);}
else if(i <= 6) {return new WorldGenModTree(Blocks.log2, Blocks.leaves2, 1, 1, false, 10, 1, false);}
else if(i <= 7) {return new WorldGenModTree(ModBlocks.ebonyWood, ModBlocks.ebonyLeaves, 10, 1, true);}
else if(i <= 8) {return new WorldGenModTree(ModBlocks.oliveWood, ModBlocks.oliveLeaves, 10, 1, true);}
else if(i <= 9) {return new WorldGenModTree(ModBlocks.mapleWood, ModBlocks.mapleLeaves, 10, 1, true);}
else if(i <= 10) {return new WorldGenModTree(ModBlocks.jacarandaWood, ModBlocks.jacarandaLeaves, 10, 1, true);}
else if(i <= 11) {return new WorldGenModTree(ModBlocks.rubberWood, ModBlocks.rubberLeaves, 10, 1, true);}
else {return new WorldGenModTree(Blocks.log2, Blocks.leaves2, 1, 1, false, 10, 1, true);}
}
WorldGenerator.java 文件源码
项目:Got-Wood
阅读 27
收藏 0
点赞 0
评论 0
private void makeTree(WorldGenAbstractTree tree, int chunkX, int chunkZ, Random random, World world, int min, int max) {
int num = min + random.nextInt(max - min);
for (int i = 0; i < num; i++) {
int randX = chunkX * 16 + 8 + random.nextInt(16);
int randZ = chunkZ * 16 + 8 + random.nextInt(16);
tree.generate(world, random, world.getHeight(new BlockPos(randX, 0, randZ)));
}
}
BiomeForest.java 文件源码
项目:Backmemed
阅读 26
收藏 0
点赞 0
评论 0
protected void addMushrooms(World p_185379_1_, Random p_185379_2_, BlockPos p_185379_3_)
{
for (int i = 0; i < 4; ++i)
{
for (int j = 0; j < 4; ++j)
{
int k = i * 4 + 1 + 8 + p_185379_2_.nextInt(3);
int l = j * 4 + 1 + 8 + p_185379_2_.nextInt(3);
BlockPos blockpos = p_185379_1_.getHeight(p_185379_3_.add(k, 0, l));
if (p_185379_2_.nextInt(20) == 0)
{
WorldGenBigMushroom worldgenbigmushroom = new WorldGenBigMushroom();
worldgenbigmushroom.generate(p_185379_1_, p_185379_2_, blockpos);
}
else
{
WorldGenAbstractTree worldgenabstracttree = this.genBigTreeChance(p_185379_2_);
worldgenabstracttree.setDecorationDefaults();
if (worldgenabstracttree.generate(p_185379_1_, p_185379_2_, blockpos))
{
worldgenabstracttree.generateSaplings(p_185379_1_, p_185379_2_, blockpos);
}
}
}
}
}
BiomeForest.java 文件源码
项目:CustomWorldGen
阅读 30
收藏 0
点赞 0
评论 0
public void addMushrooms(World p_185379_1_, Random p_185379_2_, BlockPos p_185379_3_)
{
for (int i = 0; i < 4; ++i)
{
for (int j = 0; j < 4; ++j)
{
int k = i * 4 + 1 + 8 + p_185379_2_.nextInt(3);
int l = j * 4 + 1 + 8 + p_185379_2_.nextInt(3);
BlockPos blockpos = p_185379_1_.getHeight(p_185379_3_.add(k, 0, l));
if (p_185379_2_.nextInt(20) == 0 && net.minecraftforge.event.terraingen.TerrainGen.decorate(p_185379_1_, p_185379_2_, blockpos, net.minecraftforge.event.terraingen.DecorateBiomeEvent.Decorate.EventType.BIG_SHROOM))
{
WorldGenBigMushroom worldgenbigmushroom = new WorldGenBigMushroom();
worldgenbigmushroom.generate(p_185379_1_, p_185379_2_, blockpos);
}
else if (net.minecraftforge.event.terraingen.TerrainGen.decorate(p_185379_1_, p_185379_2_, blockpos, net.minecraftforge.event.terraingen.DecorateBiomeEvent.Decorate.EventType.TREE))
{
WorldGenAbstractTree worldgenabstracttree = this.genBigTreeChance(p_185379_2_);
worldgenabstracttree.setDecorationDefaults();
if (worldgenabstracttree.generate(p_185379_1_, p_185379_2_, blockpos))
{
worldgenabstracttree.generateSaplings(p_185379_1_, p_185379_2_, blockpos);
}
}
}
}
}
BiomRoofedForest.java 文件源码
项目:MidgarCrusade
阅读 26
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree func_150567_a(Random rand)
{
switch (rand.nextInt(7))
{
case 0 :
return (WorldGenAbstractTree) new WorldGenRoofedTrees(0, 0);
case 1 :
return (WorldGenAbstractTree) new WorldGenRoofedTrees(0, 3);
case 2 :
return (WorldGenAbstractTree) new WorldGenRoofedTrees(2, 0);
case 3 :
return (WorldGenAbstractTree) new WorldGenRoofedTrees(2, 3);
case 4 :
return (WorldGenAbstractTree) new WorldGenTreesDim(5 + rand.nextInt(8), 2, 3);
case 5 :
return (WorldGenAbstractTree) new WorldGenTreesDim(5 + rand.nextInt(8), 2, 0);
case 6 :
return (WorldGenAbstractTree) new WorldGenBigTreesDim();
}
return (null);
}
BiomMagicForest.java 文件源码
项目:MidgarCrusade
阅读 23
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree func_150567_a(Random rand)
{
switch (rand.nextInt(7))
{
case 0 :
return (WorldGenAbstractTree) new WorldGenTreesDim(4 + rand.nextInt(8), 0, 0);
case 1 :
return (WorldGenAbstractTree) new WorldGenTreesDim(4 + rand.nextInt(8), 0, 1);
case 2 :
return (WorldGenAbstractTree) new WorldGenTreesDim(4 + rand.nextInt(8), 0, 2);
case 3 :
return (WorldGenAbstractTree) new WorldGenTreesDim(4 + rand.nextInt(8), 2, 0);
case 4 :
return (WorldGenAbstractTree) new WorldGenTreesDim(4 + rand.nextInt(8), 2, 1);
case 5 :
return (WorldGenAbstractTree) new WorldGenTreesDim(4 + rand.nextInt(8), 2, 2);
case 6 :
return (WorldGenAbstractTree) new WorldGenBigTreesDim();
}
return (null);
}
BiomeRedwood.java 文件源码
项目:Minestrappolation-4
阅读 25
收藏 0
点赞 0
评论 0
@Override
public WorldGenAbstractTree genBigTreeChance(Random random)
{
return random.nextInt(4) == 0 ?
new WorldGenRedWoodTree() :
random.nextInt(8) < 2 ? this.worldGeneratorTrees : new WorldGenRedWoodTreeSmall();
}
BiomeDarkJungle.java 文件源码
项目:TheDarkEra
阅读 21
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree func_150567_a(Random random)
{
//return (WorldGenAbstractTree)(random.nextInt(3) == 0 ? new WorldGenDarkJungleTree(false, 10, 20, 3, 3) : this.worldGeneratorTrees);
//return new WorldGenOriginalTree(TDEBlocks.dark_emerald_ore, Blocks.leaves, 4, 7, false);
//return new TDEWorldGenBigTree(false);
return new WorldGenTestTree(false, 10, 20, 1, 3);
}
BiomeGenCandy.java 文件源码
项目:RidiculousWorld
阅读 23
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree func_150567_a(Random rand)
{
if(rand.nextBoolean())
return pineTree;
else
return bubblegum;
}
BiomeGenBotania.java 文件源码
项目:RidiculousWorld
阅读 19
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree func_150567_a(Random rand)
{
if(rand.nextInt(3) == 1)
return livingwood;
else
return worldGeneratorTrees;
}
BiomeGenForest.java 文件源码
项目:Cauldron
阅读 32
收藏 0
点赞 0
评论 0
public BiomeGenBase createMutation()
{
if (this.biomeID == BiomeGenBase.forest.biomeID)
{
BiomeGenForest biomegenforest = new BiomeGenForest(this.biomeID + 128, 1);
biomegenforest.setHeight(new BiomeGenBase.Height(this.rootHeight, this.heightVariation + 0.2F));
biomegenforest.setBiomeName("Flower Forest");
biomegenforest.func_150557_a(6976549, true);
biomegenforest.func_76733_a(8233509);
return biomegenforest;
}
else
{
return this.biomeID != BiomeGenBase.birchForest.biomeID && this.biomeID != BiomeGenBase.birchForestHills.biomeID ? new BiomeGenMutated(this.biomeID + 128, this)
{
private static final String __OBFID = "CL_00000172";
public void decorate(World p_76728_1_, Random p_76728_2_, int p_76728_3_, int p_76728_4_)
{
this.baseBiome.decorate(p_76728_1_, p_76728_2_, p_76728_3_, p_76728_4_);
}
}: new BiomeGenMutated(this.biomeID + 128, this)
{
private static final String __OBFID = "CL_00001861";
public WorldGenAbstractTree func_150567_a(Random p_150567_1_)
{
return p_150567_1_.nextBoolean() ? BiomeGenForest.field_150629_aC : BiomeGenForest.field_150630_aD;
}
};
}
}
BiomeGenForest.java 文件源码
项目:Cauldron
阅读 26
收藏 0
点赞 0
评论 0
public BiomeGenBase createMutation()
{
if (this.biomeID == BiomeGenBase.forest.biomeID)
{
BiomeGenForest biomegenforest = new BiomeGenForest(this.biomeID + 128, 1);
biomegenforest.setHeight(new BiomeGenBase.Height(this.rootHeight, this.heightVariation + 0.2F));
biomegenforest.setBiomeName("Flower Forest");
biomegenforest.func_150557_a(6976549, true);
biomegenforest.func_76733_a(8233509);
return biomegenforest;
}
else
{
return this.biomeID != BiomeGenBase.birchForest.biomeID && this.biomeID != BiomeGenBase.birchForestHills.biomeID ? new BiomeGenMutated(this.biomeID + 128, this)
{
private static final String __OBFID = "CL_00000172";
public void decorate(World p_76728_1_, Random p_76728_2_, int p_76728_3_, int p_76728_4_)
{
this.baseBiome.decorate(p_76728_1_, p_76728_2_, p_76728_3_, p_76728_4_);
}
}: new BiomeGenMutated(this.biomeID + 128, this)
{
private static final String __OBFID = "CL_00001861";
public WorldGenAbstractTree func_150567_a(Random p_150567_1_)
{
return p_150567_1_.nextBoolean() ? BiomeGenForest.field_150629_aC : BiomeGenForest.field_150630_aD;
}
};
}
}
DerpyTreeGen.java 文件源码
项目:The-Derpy-Shiz-Mod
阅读 21
收藏 0
点赞 0
评论 0
public DerpyTreeGen(WorldGenAbstractTree tree, BiomeGenBase biome, int tries, int chance) {
super();
this.tree = tree;
this.biome = biome;
this.tries = tries;
this.chance = chance;
}
BiomeFruitForest.java 文件源码
项目:TheStuffMod
阅读 20
收藏 0
点赞 0
评论 0
@Override
public WorldGenAbstractTree func_150567_a(Random par1Random){
int i = par1Random.nextInt(6);
if(i <= 1) {return new WorldGenModTree(ModBlocks.lemonWood, ModBlocks.lemonLeaves);}
else if(i <= 2) {return new WorldGenModTree(ModBlocks.bananaWood, ModBlocks.bananaLeaves);}
else if(i <= 3) {return new WorldGenModTree(ModBlocks.pearWood, ModBlocks.pearLeaves);}
else if(i <= 4) {return new WorldGenModTree(ModBlocks.mangoWood, ModBlocks.mangoLeaves);}
else {return new WorldGenModTree(ModBlocks.cherryWood, ModBlocks.cherryLeaves);}
}
PontusBiome.java 文件源码
项目:harshencastle
阅读 22
收藏 0
点赞 0
评论 0
@Override
public WorldGenAbstractTree getRandomTreeFeature(Random rand) {
return new WorldGenTrees(false, 3, HarshenBlocks.PONTUS_DEAD_WOOD.getDefaultState(), HarshenBlocks.PONTUS_DEAD_LEAVES.getDefaultState(), false);
}
PontusOuterBiome.java 文件源码
项目:harshencastle
阅读 21
收藏 0
点赞 0
评论 0
@Override
public WorldGenAbstractTree getRandomTreeFeature(Random rand) {
return new BaseLargeTreeGenerator(false, HarshenBlocks.PONTUS_CHAOTIC_LEAVES.getDefaultState(), HarshenBlocks.PONTUS_CHAOTIC_WOOD);
}
PontusFarBiome.java 文件源码
项目:harshencastle
阅读 20
收藏 0
点赞 0
评论 0
@Override
public WorldGenAbstractTree getRandomTreeFeature(Random rand) {
this.decorator.treesPerChunk = 3;
return new BasePineTreeGenerator(HarshenBlocks.PONTUS_FAR_WOOD, HarshenBlocks.PONTUS_FAR_LEAVES.getDefaultState());
}
WorldGenerator.java 文件源码
项目:Got-Wood
阅读 28
收藏 0
点赞 0
评论 0
@Override
public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider) {
if (world.provider.getDimension() == 0) {
WorldGenAbstractTree apple = new WorldGenApple(false);
WorldGenAbstractTree maple = new WorldGenMaple(false);
WorldGenAbstractTree ebony = new WorldGenEbony(false);
WorldGenAbstractTree fir = new WorldGenFir(false);
WorldGenAbstractTree pine = new WorldGenPine(false);
WorldGenAbstractTree willow = new WorldGenWillow();
WorldGenAbstractTree yew = new WorldGenYew();
// get the biome
Biome biome = world.getBiome(new BlockPos(chunkX * 16, 64, chunkZ * 16));
if (biome instanceof BiomeDesert) {
makeTree(ebony, chunkX, chunkZ, random, world, 0, 1);
}
if (biome instanceof BiomeForest || biome instanceof BiomeForestMutated) {
if (random.nextInt(4) == 0) {
makeTree(maple, chunkX, chunkZ, random, world, 0, 3);
}
if (random.nextInt(12) == 0) {
makeTree(apple, chunkX, chunkZ, random, world, 1, 2);
}
makeTree(pine, chunkX, chunkZ, random, world, 0, 3);
}
if (biome instanceof BiomeHills) {
makeTree(maple, chunkX, chunkZ, random, world, 0, 3);
makeTree(fir, chunkX, chunkZ, random, world, 0, 3);
}
if (biome instanceof BiomeMesa && random.nextBoolean()) {
makeTree(ebony, chunkX, chunkZ, random, world, 1, 3);
}
if (biome instanceof BiomePlains) {
makeTree(apple, chunkX, chunkZ, random, world, 0, 1);
}
if (biome instanceof BiomeRiver && random.nextInt(3) == 0) {
makeTree(yew, chunkX, chunkZ, random, world, 0, 3);
}
if (biome instanceof BiomeSavanna) {
makeTree(ebony, chunkX, chunkZ, random, world, 0, 3);
}
if (biome instanceof BiomeSwamp) {
if (random.nextInt(2) == 0) {
makeTree(willow, chunkX, chunkZ, random, world, 0, 3);
}
if (random.nextInt(1) == 0) {
makeTree(yew, chunkX, chunkZ, random, world, 0, 3);
}
}
if (biome instanceof BiomeTaiga) {
makeTree(pine, chunkX, chunkZ, random, world, 0, 3);
makeTree(fir, chunkX, chunkZ, random, world, 1, 4);
}
if (biome instanceof BiomeJungle) {
makeTree(rubber, chunkX, chunkZ, random, world, 0, 3);
}
}
}
BiomeGenForest.java 文件源码
项目:DecompiledMinecraft
阅读 30
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree genBigTreeChance(Random rand)
{
return (WorldGenAbstractTree)(this.field_150632_aF == 3 && rand.nextInt(3) > 0 ? field_150631_aE : (this.field_150632_aF != 2 && rand.nextInt(5) != 0 ? this.worldGeneratorTrees : field_150630_aD));
}
BiomeGenForest.java 文件源码
项目:DecompiledMinecraft
阅读 25
收藏 0
点赞 0
评论 0
public void decorate(World worldIn, Random rand, BlockPos pos)
{
if (this.field_150632_aF == 3)
{
for (int i = 0; i < 4; ++i)
{
for (int j = 0; j < 4; ++j)
{
int k = i * 4 + 1 + 8 + rand.nextInt(3);
int l = j * 4 + 1 + 8 + rand.nextInt(3);
BlockPos blockpos = worldIn.getHeight(pos.add(k, 0, l));
if (rand.nextInt(20) == 0)
{
WorldGenBigMushroom worldgenbigmushroom = new WorldGenBigMushroom();
worldgenbigmushroom.generate(worldIn, rand, blockpos);
}
else
{
WorldGenAbstractTree worldgenabstracttree = this.genBigTreeChance(rand);
worldgenabstracttree.func_175904_e();
if (worldgenabstracttree.generate(worldIn, rand, blockpos))
{
worldgenabstracttree.func_180711_a(worldIn, rand, blockpos);
}
}
}
}
}
int j1 = rand.nextInt(5) - 3;
if (this.field_150632_aF == 1)
{
j1 += 2;
}
for (int k1 = 0; k1 < j1; ++k1)
{
int l1 = rand.nextInt(3);
if (l1 == 0)
{
DOUBLE_PLANT_GENERATOR.setPlantType(BlockDoublePlant.EnumPlantType.SYRINGA);
}
else if (l1 == 1)
{
DOUBLE_PLANT_GENERATOR.setPlantType(BlockDoublePlant.EnumPlantType.ROSE);
}
else if (l1 == 2)
{
DOUBLE_PLANT_GENERATOR.setPlantType(BlockDoublePlant.EnumPlantType.PAEONIA);
}
for (int i2 = 0; i2 < 5; ++i2)
{
int j2 = rand.nextInt(16) + 8;
int k2 = rand.nextInt(16) + 8;
int i1 = rand.nextInt(worldIn.getHeight(pos.add(j2, 0, k2)).getY() + 32);
if (DOUBLE_PLANT_GENERATOR.generate(worldIn, rand, new BlockPos(pos.getX() + j2, i1, pos.getZ() + k2)))
{
break;
}
}
}
super.decorate(worldIn, rand, pos);
}
BiomeGenJungle.java 文件源码
项目:DecompiledMinecraft
阅读 28
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree genBigTreeChance(Random rand)
{
return (WorldGenAbstractTree)(rand.nextInt(10) == 0 ? this.worldGeneratorBigTree : (rand.nextInt(2) == 0 ? new WorldGenShrub(field_181620_aE, field_181622_aG) : (!this.field_150614_aC && rand.nextInt(3) == 0 ? new WorldGenMegaJungle(false, 10, 20, field_181620_aE, field_181621_aF) : new WorldGenTrees(false, 4 + rand.nextInt(7), field_181620_aE, field_181621_aF, true))));
}
BiomeGenSavanna.java 文件源码
项目:DecompiledMinecraft
阅读 24
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree genBigTreeChance(Random rand)
{
return (WorldGenAbstractTree)(rand.nextInt(5) > 0 ? field_150627_aC : this.worldGeneratorTrees);
}
BiomeGenTaiga.java 文件源码
项目:DecompiledMinecraft
阅读 20
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree genBigTreeChance(Random rand)
{
return (WorldGenAbstractTree)((this.field_150644_aH == 1 || this.field_150644_aH == 2) && rand.nextInt(3) == 0 ? (this.field_150644_aH != 2 && rand.nextInt(13) != 0 ? field_150641_aE : field_150642_aF) : (rand.nextInt(3) == 0 ? field_150639_aC : field_150640_aD));
}
BiomeGenBase.java 文件源码
项目:DecompiledMinecraft
阅读 22
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree genBigTreeChance(Random rand)
{
return (WorldGenAbstractTree)(rand.nextInt(10) == 0 ? this.worldGeneratorBigTree : this.worldGeneratorTrees);
}
BiomeGenMesa.java 文件源码
项目:DecompiledMinecraft
阅读 22
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree genBigTreeChance(Random rand)
{
return this.worldGeneratorTrees;
}
BiomeGenSwamp.java 文件源码
项目:DecompiledMinecraft
阅读 25
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree genBigTreeChance(Random rand)
{
return this.worldGeneratorSwamp;
}
BiomeGenMutated.java 文件源码
项目:DecompiledMinecraft
阅读 21
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree genBigTreeChance(Random rand)
{
return this.baseBiome.genBigTreeChance(rand);
}
BiomeGenSnow.java 文件源码
项目:DecompiledMinecraft
阅读 20
收藏 0
点赞 0
评论 0
public WorldGenAbstractTree genBigTreeChance(Random rand)
{
return new WorldGenTaiga2(false);
}