    001    package net.minecraft.world.gen.feature;
    002
    003    import java.util.Random;
    004    import net.minecraft.block.Block;
    005    import net.minecraft.block.material.Material;
    006    import net.minecraft.world.World;
    007
    008    public class WorldGenReed extends WorldGenerator
    009    {
    010        public boolean generate(World par1World, Random par2Random, int par3, int par4, int par5)
    011        {
    012            for (int var6 = 0; var6 < 20; ++var6)
    013            {
    014                int var7 = par3 + par2Random.nextInt(4) - par2Random.nextInt(4);
    015                int var8 = par4;
    016                int var9 = par5 + par2Random.nextInt(4) - par2Random.nextInt(4);
    017
    018                if (par1World.isAirBlock(var7, par4, var9) && (par1World.getBlockMaterial(var7 - 1, par4 - 1, var9) == Material.water || par1World.getBlockMaterial(var7 + 1, par4 - 1, var9) == Material.water || par1World.getBlockMaterial(var7, par4 - 1, var9 - 1) == Material.water || par1World.getBlockMaterial(var7, par4 - 1, var9 + 1) == Material.water))
    019                {
    020                    int var10 = 2 + par2Random.nextInt(par2Random.nextInt(3) + 1);
    021
    022                    for (int var11 = 0; var11 < var10; ++var11)
    023                    {
    024                        if (Block.reed.canBlockStay(par1World, var7, var8 + var11, var9))
    025                        {
    026                            par1World.setBlock(var7, var8 + var11, var9, Block.reed.blockID);
    027                        }
    028                    }
    029                }
    030            }
    031
    032            return true;
    033        }
    034    }