More changes to Nether biomes.

This commit is contained in:
Matt Caughey 2013-05-20 20:49:30 -04:00
parent b93535ed07
commit 0d5ab5b419
8 changed files with 121 additions and 10 deletions

View file

@ -40,15 +40,13 @@ Burning Brush: A smokey forest with burnt trees, smoldering grass, and ash.
NETHER BIOMES: NETHER BIOMES:
Undergarden: Vines, nether wart, giant/small mushrooms, hellstem plant. Undergarden: Vines, nether wart, giant/small mushrooms.
Corrupted Sands: Soulsand, bramble, thorns. Corrupted Sands: Soulsand, bramble, thorns.
Phantasmagoric Inferno: Lots of lavafalls and lava ponds. Phantasmagoric Inferno: Lots of lavafalls and lava ponds.
Aphotic Abyss: Large, empty pits that go into the void. Lots of mobs will spawn here. Boneyard: Skulls, bones sticking out of the ground, large bone structures, and graves.
Parasitic Heap: A living, breathing biome where a parasitic block slowly engulfs netherrack.
--- ---

View file

@ -24,7 +24,7 @@ public class BiomeGenNetherGarden extends BiomeGenBase
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator; this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
this.topBlock = (byte)Block.netherrack.blockID; this.topBlock = (byte)Block.netherrack.blockID;
this.fillerBlock = (byte)Block.netherrack.blockID; this.fillerBlock = (byte)Block.netherrack.blockID;
this.customBiomeDecorator.treesPerChunk = 60; this.customBiomeDecorator.treesPerChunk = 80;
this.customBiomeDecorator.netherVinesPerChunk = 60; this.customBiomeDecorator.netherVinesPerChunk = 60;
this.customBiomeDecorator.mushroomsPerChunk = 30; this.customBiomeDecorator.mushroomsPerChunk = 30;
this.customBiomeDecorator.bigMushroomsPerChunk = 30; this.customBiomeDecorator.bigMushroomsPerChunk = 30;

View file

@ -29,6 +29,7 @@ public class BiomeGenNetherLava extends BiomeGenBase
this.fillerBlock = (byte)Block.netherrack.blockID; this.fillerBlock = (byte)Block.netherrack.blockID;
this.customBiomeDecorator.grassPerChunk = 15; this.customBiomeDecorator.grassPerChunk = 15;
this.customBiomeDecorator.netherLavaPerChunk = 20; this.customBiomeDecorator.netherLavaPerChunk = 20;
this.customBiomeDecorator.generateAsh = true;
this.spawnableMonsterList.clear(); this.spawnableMonsterList.clear();
this.spawnableCreatureList.clear(); this.spawnableCreatureList.clear();
this.spawnableWaterCreatureList.clear(); this.spawnableWaterCreatureList.clear();

View file

@ -38,7 +38,7 @@ public class BiomeLayerBiomes extends BiomeLayer
} }
if (Biomes.netherDesert.isPresent()) if (Biomes.netherDesert.isPresent())
{ {
netherBiomes.add(Biomes.netherDesert.get()); //netherBiomes.add(Biomes.netherDesert.get());
} }
if (Biomes.netherLava.isPresent()) if (Biomes.netherLava.isPresent())
{ {
@ -46,7 +46,7 @@ public class BiomeLayerBiomes extends BiomeLayer
} }
if (Biomes.netherAbyss.isPresent()) if (Biomes.netherAbyss.isPresent())
{ {
netherBiomes.add(Biomes.netherAbyss.get()); //netherBiomes.add(Biomes.netherAbyss.get());
} }
//PROMISED BIOMES //PROMISED BIOMES

View file

@ -6,6 +6,7 @@ import biomesoplenty.api.Blocks;
import biomesoplenty.configuration.BOPBlocks; import biomesoplenty.configuration.BOPBlocks;
import net.minecraft.util.MathHelper; import net.minecraft.util.MathHelper;
import net.minecraft.block.Block;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator; import net.minecraft.world.gen.feature.WorldGenerator;
@ -64,7 +65,7 @@ public class WorldGenAsh extends WorldGenerator
{ {
double var45 = ((double)var44 + 0.5D - var24) / (var28 / 2.0D); double var45 = ((double)var44 + 0.5D - var24) / (var28 / 2.0D);
if (var39 * var39 + var42 * var42 + var45 * var45 < 1.0D && par1World.getBlockId(var38, var41, var44) == Blocks.ashStone.get().blockID) if (var39 * var39 + var42 * var42 + var45 * var45 < 1.0D && par1World.getBlockId(var38, var41, var44) == Blocks.ashStone.get().blockID || par1World.getBlockId(var38, var41, var44) == Block.netherrack.blockID)
{ {
par1World.setBlock(var38, var41, var44, this.minableBlockId); par1World.setBlock(var38, var41, var44, this.minableBlockId);
} }

View file

@ -0,0 +1,52 @@
package biomesoplenty.worldgen;
import java.util.Random;
import biomesoplenty.api.Blocks;
import biomesoplenty.configuration.BOPBlocks;
import net.minecraft.block.Block;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
public class WorldGenNetherBush extends WorldGenerator
{
public boolean generate(World var1, Random var2, int var3, int var4, int var5)
{
while (var1.isAirBlock(var3, var4, var5) && var4 > 2)
{
--var4;
}
int var6 = var1.getBlockId(var3, var4, var5);
int var99 = var1.getBlockId(var3, var4 + 1, var5);
if (var6 != Block.netherrack.blockID && var99 != 0)
{
return false;
}
else
{
for (int var7 = -2; var7 <= 2; ++var7)
{
for (int var8 = -2; var8 <= 2; ++var8)
{
if (var1.isAirBlock(var3 + var7, var4 - 1, var5 + var8) && var1.isAirBlock(var3 + var7, var4 - 2, var5 + var8))
{
return false;
}
}
}
var1.setBlock(var3, var4, var5, Block.netherrack.blockID);
this.setBlockAndMetadata(var1, var3, var4 + 1, var5, Block.wood.blockID,0);
this.setBlockAndMetadata(var1, var3, var4 + 2, var5, Block.wood.blockID,0);
this.setBlockAndMetadata(var1, var3 + 1, var4 + 2, var5, Block.leaves.blockID, 0);
this.setBlockAndMetadata(var1, var3 - 1, var4 + 2, var5, Block.leaves.blockID, 0);
this.setBlockAndMetadata(var1, var3, var4 + 2, var5 + 1, Block.leaves.blockID, 0);
this.setBlockAndMetadata(var1, var3, var4 + 2, var5 - 1, Block.leaves.blockID, 0);
this.setBlockAndMetadata(var1, var3, var4 + 3, var5, Block.leaves.blockID, 0);
return true;
}
}
}

View file

@ -55,6 +55,64 @@ public class WorldGenNetherGrass extends WorldGenerator
{ {
par1World.setBlock(var8, var9, var10, Block.tallGrass.blockID, 0, 2); par1World.setBlock(var8, var9, var10, Block.tallGrass.blockID, 0, 2);
} }
if (var99 == 3)
{
par1World.setBlock(var8, var9, var10, Block.wood.blockID, 0, 2);
if (par1World.isAirBlock(var8, var9 + 1, var10))
{
par1World.setBlock(var8, var9 + 1, var10, Block.wood.blockID, 0, 2);
}
if (par1World.isAirBlock(var8 + 1, var9 + 1, var10))
{
par1World.setBlock(var8 + 1, var9 + 1, var10, Block.leaves.blockID, 0, 2);
}
if (par1World.isAirBlock(var8 - 1, var9 + 1, var10))
{
par1World.setBlock(var8 - 1, var9 + 1, var10, Block.leaves.blockID, 0, 2);
}
if (par1World.isAirBlock(var8, var9 + 1, var10 + 1))
{
par1World.setBlock(var8, var9 + 1, var10 + 1, Block.leaves.blockID, 0, 2);
}
if (par1World.isAirBlock(var8, var9 + 1, var10 - 1))
{
par1World.setBlock(var8, var9 + 1, var10 - 1, Block.leaves.blockID, 0, 2);
}
if (par1World.isAirBlock(var8, var9 + 2, var10))
{
par1World.setBlock(var8, var9 + 2, var10, Block.leaves.blockID, 0, 2);
}
}
if (var99 == 4)
{
par1World.setBlock(var8, var9, var10, Block.wood.blockID, 0, 2);
if (par1World.isAirBlock(var8, var9 + 1, var10))
{
par1World.setBlock(var8, var9 + 1, var10, Block.wood.blockID, 0, 2);
}
if (par1World.isAirBlock(var8 + 1, var9 + 1, var10))
{
par1World.setBlock(var8 + 1, var9 + 1, var10, Block.leaves.blockID, 0, 2);
}
if (par1World.isAirBlock(var8 - 1, var9 + 1, var10))
{
par1World.setBlock(var8 - 1, var9 + 1, var10, Block.leaves.blockID, 0, 2);
}
if (par1World.isAirBlock(var8, var9 + 1, var10 + 1))
{
par1World.setBlock(var8, var9 + 1, var10 + 1, Block.leaves.blockID, 0, 2);
}
if (par1World.isAirBlock(var8, var9 + 1, var10 - 1))
{
par1World.setBlock(var8, var9 + 1, var10 - 1, Block.leaves.blockID, 0, 2);
}
if (par1World.isAirBlock(var8, var9 + 2, var10))
{
par1World.setBlock(var8, var9 + 2, var10, Block.leaves.blockID, 0, 2);
}
}
} }
} }

View file

@ -5,6 +5,7 @@ import java.util.Random;
import biomesoplenty.api.Blocks; import biomesoplenty.api.Blocks;
import biomesoplenty.configuration.BOPBlocks; import biomesoplenty.configuration.BOPBlocks;
import net.minecraft.block.Block;
import net.minecraft.util.MathHelper; import net.minecraft.util.MathHelper;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator; import net.minecraft.world.gen.feature.WorldGenerator;
@ -67,7 +68,7 @@ public class WorldGenSmolderingGrass extends WorldGenerator
{ {
double var45 = ((double)var44 + 0.5D - var24) / (var28 / 2.0D); double var45 = ((double)var44 + 0.5D - var24) / (var28 / 2.0D);
if (var39 * var39 + var42 * var42 + var45 * var45 < 1.0D && par1World.getBlockId(var38, var41, var44) == Blocks.ash.get().blockID) if (var39 * var39 + var42 * var42 + var45 * var45 < 1.0D && par1World.getBlockId(var38, var41, var44) == Blocks.ash.get().blockID || par1World.getBlockId(var38, var41, var44) == Block.netherrack.blockID)
{ {
par1World.setBlock(var38, var41, var44, this.minableBlockId, this.blockMeta, 2); par1World.setBlock(var38, var41, var44, this.minableBlockId, this.blockMeta, 2);
} }