public virtual void Populate(net.minecraft.src.IChunkProvider ichunkprovider, int i, int j) { net.minecraft.src.BlockSand.fallInstantly = true; int k = i * 16; int l = j * 16; net.minecraft.src.BiomeGenBase biomegenbase = worldObj.GetWorldChunkManager().GetBiomeGenAt (k + 16, l + 16); rand.SetSeed(worldObj.GetSeed()); long l1 = (rand.NextLong() / 2L) * 2L + 1L; long l2 = (rand.NextLong() / 2L) * 2L + 1L; rand.SetSeed((long)i * l1 + (long)j * l2 ^ worldObj.GetSeed()); double d = 0.25D; if (rand.Next(4) == 0) { int i1 = k + rand.Next(16) + 8; int l4 = rand.Next(128); int i8 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenLakes(net.minecraft.src.Block.STATIONARY_WATER.ID)) .Generate(worldObj, rand, i1, l4, i8); } if (rand.Next(8) == 0) { int j1 = k + rand.Next(16) + 8; int i5 = rand.Next(rand.Next(120) + 8); int j8 = l + rand.Next(16) + 8; if (i5 < 64 || rand.Next(10) == 0) { (new net.minecraft.src.WorldGenLakes(net.minecraft.src.Block.STATIONARY_LAVA.ID)). Generate(worldObj, rand, j1, i5, j8); } } for (int k1 = 0; k1 < 8; k1++) { int j5 = k + rand.Next(16) + 8; int k8 = rand.Next(128); int j11 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenDungeons()).Generate(worldObj, rand, j5, k8, j11); } for (int i2 = 0; i2 < 10; i2++) { int k5 = k + rand.Next(16); int l8 = rand.Next(128); int k11 = l + rand.Next(16); (new net.minecraft.src.WorldGenClay(32)).Generate(worldObj, rand, k5, l8, k11); } for (int j2 = 0; j2 < 20; j2++) { int l5 = k + rand.Next(16); int i9 = rand.Next(128); int l11 = l + rand.Next(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.DIRT.ID, 32)) .Generate(worldObj, rand, l5, i9, l11); } for (int k2 = 0; k2 < 10; k2++) { int i6 = k + rand.Next(16); int j9 = rand.Next(128); int i12 = l + rand.Next(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.GRAVEL.ID, 32 )).Generate(worldObj, rand, i6, j9, i12); } for (int i3 = 0; i3 < 20; i3++) { int j6 = k + rand.Next(16); int k9 = rand.Next(128); int j12 = l + rand.Next(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.COAL_ORE.ID, 16 )).Generate(worldObj, rand, j6, k9, j12); } for (int j3 = 0; j3 < 20; j3++) { int k6 = k + rand.Next(16); int l9 = rand.Next(64); int k12 = l + rand.Next(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.IRON_ORE.ID, 8 )).Generate(worldObj, rand, k6, l9, k12); } for (int k3 = 0; k3 < 2; k3++) { int l6 = k + rand.Next(16); int i10 = rand.Next(32); int l12 = l + rand.Next(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.GOLD_ORE.ID, 8 )).Generate(worldObj, rand, l6, i10, l12); } for (int l3 = 0; l3 < 8; l3++) { int i7 = k + rand.Next(16); int j10 = rand.Next(16); int i13 = l + rand.Next(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.REDSTONE_ORE.ID , 7)).Generate(worldObj, rand, i7, j10, i13); } for (int i4 = 0; i4 < 1; i4++) { int j7 = k + rand.Next(16); int k10 = rand.Next(16); int j13 = l + rand.Next(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.DIAMOND_ORE.ID , 7)).Generate(worldObj, rand, j7, k10, j13); } for (int j4 = 0; j4 < 1; j4++) { int k7 = k + rand.Next(16); int l10 = rand.Next(16) + rand.Next(16); int k13 = l + rand.Next(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.LAPIS_ORE.ID, 6)).Generate(worldObj, rand, k7, l10, k13); } d = 0.5D; int k4 = (int)((mobSpawnerNoise.Func_647_a((double)k * d, (double)l * d) / 8D + rand .NextDouble() * 4D + 4D) / 3D); int l7 = 0; if (rand.Next(10) == 0) { l7++; } if (biomegenbase == net.minecraft.src.BiomeGenBase.forest) { l7 += k4 + 5; } if (biomegenbase == net.minecraft.src.BiomeGenBase.rainforest) { l7 += k4 + 5; } if (biomegenbase == net.minecraft.src.BiomeGenBase.seasonalForest) { l7 += k4 + 2; } if (biomegenbase == net.minecraft.src.BiomeGenBase.taiga) { l7 += k4 + 5; } if (biomegenbase == net.minecraft.src.BiomeGenBase.desert) { l7 -= 20; } if (biomegenbase == net.minecraft.src.BiomeGenBase.tundra) { l7 -= 20; } if (biomegenbase == net.minecraft.src.BiomeGenBase.plains) { l7 -= 20; } for (int i11 = 0; i11 < l7; i11++) { int l13 = k + rand.Next(16) + 8; int j14 = l + rand.Next(16) + 8; net.minecraft.src.WorldGenerator worldgenerator = biomegenbase.GetRandomWorldGenForTrees (rand); worldgenerator.Func_420_a(1.0D, 1.0D, 1.0D); worldgenerator.Generate(worldObj, rand, l13, worldObj.GetHeightValue(l13, j14), j14 ); } byte byte0 = 0; if (biomegenbase == net.minecraft.src.BiomeGenBase.forest) { byte0 = 2; } if (biomegenbase == net.minecraft.src.BiomeGenBase.seasonalForest) { byte0 = 4; } if (biomegenbase == net.minecraft.src.BiomeGenBase.taiga) { byte0 = 2; } if (biomegenbase == net.minecraft.src.BiomeGenBase.plains) { byte0 = 3; } for (int i14 = 0; i14 < byte0; i14++) { int k14 = k + rand.Next(16) + 8; int l16 = rand.Next(128); int k19 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenFlowers(net.minecraft.src.Block.YELLOW_FLOWER.ID )).Generate(worldObj, rand, k14, l16, k19); } byte byte1 = 0; if (biomegenbase == net.minecraft.src.BiomeGenBase.forest) { byte1 = 2; } if (biomegenbase == net.minecraft.src.BiomeGenBase.rainforest) { byte1 = 10; } if (biomegenbase == net.minecraft.src.BiomeGenBase.seasonalForest) { byte1 = 2; } if (biomegenbase == net.minecraft.src.BiomeGenBase.taiga) { byte1 = 1; } if (biomegenbase == net.minecraft.src.BiomeGenBase.plains) { byte1 = 10; } for (int l14 = 0; l14 < byte1; l14++) { byte byte2 = 1; if (biomegenbase == net.minecraft.src.BiomeGenBase.rainforest && rand.Next(3) != 0) { byte2 = 2; } int l19 = k + rand.Next(16) + 8; int k22 = rand.Next(128); int j24 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenTallGrass(net.minecraft.src.Block.LONG_GRASS.ID , byte2)).Generate(worldObj, rand, l19, k22, j24); } byte1 = 0; if (biomegenbase == net.minecraft.src.BiomeGenBase.desert) { byte1 = 2; } for (int i15 = 0; i15 < byte1; i15++) { int i17 = k + rand.Next(16) + 8; int i20 = rand.Next(128); int l22 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenDeadBush(net.minecraft.src.Block.DEAD_BUSH.ID) ).Generate(worldObj, rand, i17, i20, l22); } if (rand.Next(2) == 0) { int j15 = k + rand.Next(16) + 8; int j17 = rand.Next(128); int j20 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenFlowers(net.minecraft.src.Block.RED_ROSE.ID)) .Generate(worldObj, rand, j15, j17, j20); } if (rand.Next(4) == 0) { int k15 = k + rand.Next(16) + 8; int k17 = rand.Next(128); int k20 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenFlowers(net.minecraft.src.Block.BROWN_MUSHROOM.ID )).Generate(worldObj, rand, k15, k17, k20); } if (rand.Next(8) == 0) { int l15 = k + rand.Next(16) + 8; int l17 = rand.Next(128); int l20 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenFlowers(net.minecraft.src.Block.RED_MUSHROOM.ID )).Generate(worldObj, rand, l15, l17, l20); } for (int i16 = 0; i16 < 10; i16++) { int i18 = k + rand.Next(16) + 8; int i21 = rand.Next(128); int i23 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenReed()).Generate(worldObj, rand, i18, i21, i23); } if (rand.Next(32) == 0) { int j16 = k + rand.Next(16) + 8; int j18 = rand.Next(128); int j21 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenPumpkin()).Generate(worldObj, rand, j16, j18, j21); } int k16 = 0; if (biomegenbase == net.minecraft.src.BiomeGenBase.desert) { k16 += 10; } for (int k18 = 0; k18 < k16; k18++) { int k21 = k + rand.Next(16) + 8; int j23 = rand.Next(128); int k24 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenCactus()).Generate(worldObj, rand, k21, j23, k24); } for (int l18 = 0; l18 < 50; l18++) { int l21 = k + rand.Next(16) + 8; int k23 = rand.Next(rand.Next(120) + 8); int l24 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenLiquids(net.minecraft.src.Block.WATER.ID )).Generate(worldObj, rand, l21, k23, l24); } for (int i19 = 0; i19 < 20; i19++) { int i22 = k + rand.Next(16) + 8; int l23 = rand.Next(rand.Next(rand.Next(112) + 8) + 8); int i25 = l + rand.Next(16) + 8; (new net.minecraft.src.WorldGenLiquids(net.minecraft.src.Block.LAVA.ID )).Generate(worldObj, rand, i22, l23, i25); } generatedTemperatures = worldObj.GetWorldChunkManager().GetTemperatures(generatedTemperatures , k + 8, l + 8, 16, 16); for (int j19 = k + 8; j19 < k + 8 + 16; j19++) { for (int j22 = l + 8; j22 < l + 8 + 16; j22++) { int i24 = j19 - (k + 8); int j25 = j22 - (l + 8); int k25 = worldObj.GetTopSolidOrLiquidBlock(j19, j22); double d1 = generatedTemperatures[i24 * 16 + j25] - ((double)(k25 - 64) / 64D) * 0.29999999999999999D; if (d1 < 0.5D && k25 > 0 && k25 < 128 && worldObj.IsAirBlock(j19, k25, j22) && worldObj .GetBlockMaterial(j19, k25 - 1, j22).GetIsSolid() && worldObj.GetBlockMaterial(j19 , k25 - 1, j22) != net.minecraft.src.Material.ice) { worldObj.SetBlockWithNotify(j19, k25, j22, net.minecraft.src.Block.SNOW.ID); } } } net.minecraft.src.BlockSand.fallInstantly = false; }
public virtual void Populate(net.minecraft.src.IChunkProvider ichunkprovider, int i, int j) { net.minecraft.src.BlockSand.fallInstantly = true; int k = i * 16; int l = j * 16; net.minecraft.src.BiomeGenBase biomegenbase = field_28079_p.GetWorldChunkManager( ).GetBiomeGenAt(k + 16, l + 16); field_28085_j.SetSeed(field_28079_p.GetSeed()); long l1 = (field_28085_j.NextLong() / 2L) * 2L + 1L; long l2 = (field_28085_j.NextLong() / 2L) * 2L + 1L; field_28085_j.SetSeed((long)i * l1 + (long)j * l2 ^ field_28079_p.GetSeed() ); double d = 0.25D; if (field_28085_j.NextInt(4) == 0) { int i1 = k + field_28085_j.NextInt(16) + 8; int l4 = field_28085_j.NextInt(128); int i8 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenLakes(net.minecraft.src.Block.STATIONARY_WATER.ID)) .Generate(field_28079_p, field_28085_j, i1, l4, i8); } if (field_28085_j.NextInt(8) == 0) { int j1 = k + field_28085_j.NextInt(16) + 8; int i5 = field_28085_j.NextInt(field_28085_j.NextInt(120) + 8); int j8 = l + field_28085_j.NextInt(16) + 8; if (i5 < 64 || field_28085_j.NextInt(10) == 0) { (new net.minecraft.src.WorldGenLakes(net.minecraft.src.Block.STATIONARY_LAVA.ID)). Generate(field_28079_p, field_28085_j, j1, i5, j8); } } for (int k1 = 0; k1 < 8; k1++) { int j5 = k + field_28085_j.NextInt(16) + 8; int k8 = field_28085_j.NextInt(128); int i13 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenDungeons()).Generate(field_28079_p, field_28085_j, j5, k8, i13); } for (int i2 = 0; i2 < 10; i2++) { int k5 = k + field_28085_j.NextInt(16); int l8 = field_28085_j.NextInt(128); int j13 = l + field_28085_j.NextInt(16); (new net.minecraft.src.WorldGenClay(32)).Generate(field_28079_p, field_28085_j, k5 , l8, j13); } for (int j2 = 0; j2 < 20; j2++) { int l5 = k + field_28085_j.NextInt(16); int i9 = field_28085_j.NextInt(128); int k13 = l + field_28085_j.NextInt(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.DIRT.ID, 32)) .Generate(field_28079_p, field_28085_j, l5, i9, k13); } for (int k2 = 0; k2 < 10; k2++) { int i6 = k + field_28085_j.NextInt(16); int j9 = field_28085_j.NextInt(128); int l13 = l + field_28085_j.NextInt(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.GRAVEL.ID, 32 )).Generate(field_28079_p, field_28085_j, i6, j9, l13); } for (int i3 = 0; i3 < 20; i3++) { int j6 = k + field_28085_j.NextInt(16); int k9 = field_28085_j.NextInt(128); int i14 = l + field_28085_j.NextInt(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.COAL_ORE.ID, 16 )).Generate(field_28079_p, field_28085_j, j6, k9, i14); } for (int j3 = 0; j3 < 20; j3++) { int k6 = k + field_28085_j.NextInt(16); int l9 = field_28085_j.NextInt(64); int j14 = l + field_28085_j.NextInt(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.IRON_ORE.ID, 8 )).Generate(field_28079_p, field_28085_j, k6, l9, j14); } for (int k3 = 0; k3 < 2; k3++) { int l6 = k + field_28085_j.NextInt(16); int i10 = field_28085_j.NextInt(32); int k14 = l + field_28085_j.NextInt(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.GOLD_ORE.ID, 8 )).Generate(field_28079_p, field_28085_j, l6, i10, k14); } for (int l3 = 0; l3 < 8; l3++) { int i7 = k + field_28085_j.NextInt(16); int j10 = field_28085_j.NextInt(16); int l14 = l + field_28085_j.NextInt(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.REDSTONE_ORE.ID , 7)).Generate(field_28079_p, field_28085_j, i7, j10, l14); } for (int i4 = 0; i4 < 1; i4++) { int j7 = k + field_28085_j.NextInt(16); int k10 = field_28085_j.NextInt(16); int i15 = l + field_28085_j.NextInt(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.DIAMOND_ORE.ID , 7)).Generate(field_28079_p, field_28085_j, j7, k10, i15); } for (int j4 = 0; j4 < 1; j4++) { int k7 = k + field_28085_j.NextInt(16); int l10 = field_28085_j.NextInt(16) + field_28085_j.NextInt(16); int j15 = l + field_28085_j.NextInt(16); (new net.minecraft.src.WorldGenMinable(net.minecraft.src.Block.LAPIS_ORE.ID, 6)).Generate(field_28079_p, field_28085_j, k7, l10, j15); } d = 0.5D; int k4 = (int)((field_28092_c.Func_647_a((double)k * d, (double)l * d) / 8D + field_28085_j .NextDouble() * 4D + 4D) / 3D); int l7 = 0; if (field_28085_j.NextInt(10) == 0) { l7++; } if (biomegenbase == net.minecraft.src.BiomeGenBase.forest) { l7 += k4 + 5; } if (biomegenbase == net.minecraft.src.BiomeGenBase.rainforest) { l7 += k4 + 5; } if (biomegenbase == net.minecraft.src.BiomeGenBase.seasonalForest) { l7 += k4 + 2; } if (biomegenbase == net.minecraft.src.BiomeGenBase.taiga) { l7 += k4 + 5; } if (biomegenbase == net.minecraft.src.BiomeGenBase.desert) { l7 -= 20; } if (biomegenbase == net.minecraft.src.BiomeGenBase.tundra) { l7 -= 20; } if (biomegenbase == net.minecraft.src.BiomeGenBase.plains) { l7 -= 20; } for (int i11 = 0; i11 < l7; i11++) { int k15 = k + field_28085_j.NextInt(16) + 8; int j18 = l + field_28085_j.NextInt(16) + 8; net.minecraft.src.WorldGenerator worldgenerator = biomegenbase.GetRandomWorldGenForTrees (field_28085_j); worldgenerator.Func_420_a(1.0D, 1.0D, 1.0D); worldgenerator.Generate(field_28079_p, field_28085_j, k15, field_28079_p.GetHeightValue (k15, j18), j18); } for (int j11 = 0; j11 < 2; j11++) { int l15 = k + field_28085_j.NextInt(16) + 8; int k18 = field_28085_j.NextInt(128); int i21 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenFlowers(net.minecraft.src.Block.YELLOW_FLOWER.ID )).Generate(field_28079_p, field_28085_j, l15, k18, i21); } if (field_28085_j.NextInt(2) == 0) { int k11 = k + field_28085_j.NextInt(16) + 8; int i16 = field_28085_j.NextInt(128); int l18 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenFlowers(net.minecraft.src.Block.RED_ROSE.ID)) .Generate(field_28079_p, field_28085_j, k11, i16, l18); } if (field_28085_j.NextInt(4) == 0) { int l11 = k + field_28085_j.NextInt(16) + 8; int j16 = field_28085_j.NextInt(128); int i19 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenFlowers(net.minecraft.src.Block.BROWN_MUSHROOM.ID )).Generate(field_28079_p, field_28085_j, l11, j16, i19); } if (field_28085_j.NextInt(8) == 0) { int i12 = k + field_28085_j.NextInt(16) + 8; int k16 = field_28085_j.NextInt(128); int j19 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenFlowers(net.minecraft.src.Block.RED_MUSHROOM.ID )).Generate(field_28079_p, field_28085_j, i12, k16, j19); } for (int j12 = 0; j12 < 10; j12++) { int l16 = k + field_28085_j.NextInt(16) + 8; int k19 = field_28085_j.NextInt(128); int j21 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenReed()).Generate(field_28079_p, field_28085_j, l16 , k19, j21); } if (field_28085_j.NextInt(32) == 0) { int k12 = k + field_28085_j.NextInt(16) + 8; int i17 = field_28085_j.NextInt(128); int l19 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenPumpkin()).Generate(field_28079_p, field_28085_j, k12, i17, l19); } int l12 = 0; if (biomegenbase == net.minecraft.src.BiomeGenBase.desert) { l12 += 10; } for (int j17 = 0; j17 < l12; j17++) { int i20 = k + field_28085_j.NextInt(16) + 8; int k21 = field_28085_j.NextInt(128); int k22 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenCactus()).Generate(field_28079_p, field_28085_j, i20 , k21, k22); } for (int k17 = 0; k17 < 50; k17++) { int j20 = k + field_28085_j.NextInt(16) + 8; int l21 = field_28085_j.NextInt(field_28085_j.NextInt(120) + 8); int l22 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenLiquids(net.minecraft.src.Block.WATER.ID )).Generate(field_28079_p, field_28085_j, j20, l21, l22); } for (int l17 = 0; l17 < 20; l17++) { int k20 = k + field_28085_j.NextInt(16) + 8; int i22 = field_28085_j.NextInt(field_28085_j.NextInt(field_28085_j.NextInt(112) + 8) + 8); int i23 = l + field_28085_j.NextInt(16) + 8; (new net.minecraft.src.WorldGenLiquids(net.minecraft.src.Block.LAVA.ID )).Generate(field_28079_p, field_28085_j, k20, i22, i23); } field_28072_w = field_28079_p.GetWorldChunkManager().GetTemperatures(field_28072_w , k + 8, l + 8, 16, 16); for (int i18 = k + 8; i18 < k + 8 + 16; i18++) { for (int l20 = l + 8; l20 < l + 8 + 16; l20++) { int j22 = i18 - (k + 8); int j23 = l20 - (l + 8); int k23 = field_28079_p.GetTopSolidOrLiquidBlock(i18, l20); double d1 = field_28072_w[j22 * 16 + j23] - ((double)(k23 - 64) / 64D) * 0.29999999999999999D; if (d1 < 0.5D && k23 > 0 && k23 < 128 && field_28079_p.IsAirBlock(i18, k23, l20) && field_28079_p.GetBlockMaterial(i18, k23 - 1, l20).GetIsSolid() && field_28079_p .GetBlockMaterial(i18, k23 - 1, l20) != net.minecraft.src.Material.ice) { field_28079_p.SetBlockWithNotify(i18, k23, l20, net.minecraft.src.Block.SNOW.ID ); } } } net.minecraft.src.BlockSand.fallInstantly = false; }