--- ../src_base/common/net/minecraft/src/WorldGenTaiga2.java +++ ../src_work/common/net/minecraft/src/WorldGenTaiga2.java @@ -45,7 +45,9 @@ { var15 = par1World.getBlockId(var13, var11, var14); - if (var15 != 0 && var15 != Block.leaves.blockID) + Block block = Block.blocksList[var15]; + + if (var15 != 0 && block != null && !block.isLeaves(par1World, var13, var11, var14)) { var10 = false; } @@ -87,7 +89,10 @@ { int var20 = var19 - par5; - if ((Math.abs(var18) != var21 || Math.abs(var20) != var21 || var21 <= 0) && !Block.opaqueCubeLookup[par1World.getBlockId(var17, var16, var19)]) + Block block = Block.blocksList[par1World.getBlockId(var17, var16, var19)]; + + if ((Math.abs(var18) != var21 || Math.abs(var20) != var21 || var21 <= 0) && + (block == null || block.canBeReplacedByLeaves(par1World, var17, var16, var19))) { this.setBlockAndMetadata(par1World, var17, var16, var19, Block.leaves.blockID, 1); } @@ -117,7 +122,9 @@ { var17 = par1World.getBlockId(par3, par4 + var16, par5); - if (var17 == 0 || var17 == Block.leaves.blockID) + Block block = Block.blocksList[var17]; + + if (var17 == 0 || block == null || block.isLeaves(par1World, par3, par4 + var16, par5)) { this.setBlockAndMetadata(par1World, par3, par4 + var16, par5, Block.wood.blockID, 1); }