package net.minecraft.world.gen.feature;
import java.util.Random;
import net.minecraft.block.Block;
import net.minecraft.world.World;
public class WorldGenHellLava extends WorldGenerator
{
/** Stores the ID for WorldGenHellLava */
private int hellLavaID;
public WorldGenHellLava(int par1)
{
this.hellLavaID = par1;
}
public boolean generate(World par1World, Random par2Random, int par3, int par4, int par5)
{
if (par1World.getBlockId(par3, par4 + 1, par5) != Block.netherrack.blockID)
{
return false;
}
else if (par1World.getBlockId(par3, par4, par5) != 0 && par1World.getBlockId(par3, par4, par5) != Block.netherrack.blockID)
{
return false;
}
else
{
int var6 = 0;
if (par1World.getBlockId(par3 - 1, par4, par5) == Block.netherrack.blockID)
{
++var6;
}
if (par1World.getBlockId(par3 + 1, par4, par5) == Block.netherrack.blockID)
{
++var6;
}
if (par1World.getBlockId(par3, par4, par5 - 1) == Block.netherrack.blockID)
{
++var6;
}
if (par1World.getBlockId(par3, par4, par5 + 1) == Block.netherrack.blockID)
{
++var6;
}
if (par1World.getBlockId(par3, par4 - 1, par5) == Block.netherrack.blockID)
{
++var6;
}
int var7 = 0;
if (par1World.isAirBlock(par3 - 1, par4, par5))
{
++var7;
}
if (par1World.isAirBlock(par3 + 1, par4, par5))
{
++var7;
}
if (par1World.isAirBlock(par3, par4, par5 - 1))
{
++var7;
}
if (par1World.isAirBlock(par3, par4, par5 + 1))
{
++var7;
}
if (par1World.isAirBlock(par3, par4 - 1, par5))
{
++var7;
}
if (var6 == 4 && var7 == 1)
{
par1World.setBlockWithNotify(par3, par4, par5, this.hellLavaID);
par1World.scheduledUpdatesAreImmediate = true;
Block.blocksList[this.hellLavaID].updateTick(par1World, par3, par4, par5, par2Random);
par1World.scheduledUpdatesAreImmediate = false;
}
return true;
}
}
}