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