Tweaks to the Wasteland biome

This commit is contained in:
Matt Caughey 2013-11-18 21:48:59 -05:00
parent ca3a907507
commit 345d1c8869
3 changed files with 142 additions and 3 deletions

View file

@ -10,6 +10,8 @@ import biomesoplenty.api.Blocks;
import biomesoplenty.configuration.configfile.BOPConfigurationMisc; import biomesoplenty.configuration.configfile.BOPConfigurationMisc;
import biomesoplenty.worldgen.WorldGenWasteland; import biomesoplenty.worldgen.WorldGenWasteland;
import biomesoplenty.worldgen.WorldGenWasteland2; import biomesoplenty.worldgen.WorldGenWasteland2;
import biomesoplenty.worldgen.WorldGenWasteland3;
import biomesoplenty.worldgen.WorldGenWasteland4;
import biomesoplenty.worldgen.tree.WorldGenDeadTree3; import biomesoplenty.worldgen.tree.WorldGenDeadTree3;
public class BiomeGenWasteland extends BiomeGenBase implements IWCFog public class BiomeGenWasteland extends BiomeGenBase implements IWCFog
@ -24,8 +26,10 @@ public class BiomeGenWasteland extends BiomeGenBase implements IWCFog
theBiomeDecorator = new BiomeDecoratorBOP(this); theBiomeDecorator = new BiomeDecoratorBOP(this);
customBiomeDecorator = (BiomeDecoratorBOP) theBiomeDecorator; customBiomeDecorator = (BiomeDecoratorBOP) theBiomeDecorator;
customBiomeDecorator.treesPerChunk = 0; customBiomeDecorator.treesPerChunk = 0;
customBiomeDecorator.grassPerChunk = 20;
customBiomeDecorator.deadGrassPerChunk = 14; customBiomeDecorator.deadGrassPerChunk = 14;
customBiomeDecorator.poisonWaterPerChunk = 10; customBiomeDecorator.poisonWaterPerChunk = 10;
customBiomeDecorator.waterLakesPerChunk = 2;
waterColorMultiplier = 15073024; waterColorMultiplier = 15073024;
spawnableCreatureList.clear(); spawnableCreatureList.clear();
spawnableWaterCreatureList.clear(); spawnableWaterCreatureList.clear();
@ -42,6 +46,15 @@ public class BiomeGenWasteland extends BiomeGenBase implements IWCFog
: new WorldGenWasteland()); : new WorldGenWasteland());
} }
/**
* Gets a WorldGen appropriate for this biome.
*/
@Override
public WorldGenerator getRandomWorldGenForGrass(Random par1Random)
{
return par1Random.nextInt(2) == 0 ? new WorldGenWasteland4() : new WorldGenWasteland3();
}
/** /**
* Provides the basic grass color based on the biome temperature and * Provides the basic grass color based on the biome temperature and
* rainfall * rainfall
@ -68,7 +81,7 @@ public class BiomeGenWasteland extends BiomeGenBase implements IWCFog
@Override @Override
public int getFogColour() public int getFogColour()
{ {
return 5662280; return 12106885;
} }
/** /**
@ -79,7 +92,7 @@ public class BiomeGenWasteland extends BiomeGenBase implements IWCFog
{ {
if (BOPConfigurationMisc.skyColors) if (BOPConfigurationMisc.skyColors)
{ {
return 10465942; return 9477744;
} }
else else
{ {
@ -104,6 +117,6 @@ public class BiomeGenWasteland extends BiomeGenBase implements IWCFog
public float getFogCloseness() public float getFogCloseness()
{ {
// TODO Auto-generated method stub // TODO Auto-generated method stub
return 0.6F; return 0.3F;
} }
} }

View file

@ -0,0 +1,66 @@
package biomesoplenty.worldgen;
import java.util.Random;
import net.minecraft.block.Block;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
import biomesoplenty.api.Blocks;
public class WorldGenWasteland3 extends WorldGenerator
{
@Override
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 var95 = var1.getBlockId(var3 - 1, var4, var5);
int var96 = var1.getBlockId(var3 + 1, var4, var5);
int var97 = var1.getBlockId(var3, var4, var5 - 1);
int var98 = var1.getBlockId(var3, var4, var5 + 1);
if (var6 != Blocks.driedDirt.get().blockID || var95 != Blocks.driedDirt.get().blockID || var96 != Blocks.driedDirt.get().blockID || var97 != Blocks.driedDirt.get().blockID || var98 != Blocks.driedDirt.get().blockID )
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;
}
}
int var999 = var2.nextInt(2);
if (var999 == 0)
{
var1.setBlock(var3, var4, var5, Blocks.driedDirt.get().blockID);
var1.setBlock(var3 - 1, var4, var5, Blocks.driedDirt.get().blockID);
var1.setBlock(var3 + 1, var4, var5, Blocks.driedDirt.get().blockID);
var1.setBlock(var3, var4, var5 - 1, Blocks.driedDirt.get().blockID);
var1.setBlock(var3, var4, var5 + 1, Blocks.driedDirt.get().blockID);
this.setBlockAndMetadata(var1, var3, var4 + 1, var5, Blocks.driedDirt.get().blockID, 0);
this.setBlockAndMetadata(var1, var3 + 1, var4 + 1, var5, Blocks.driedDirt.get().blockID, 0);
this.setBlockAndMetadata(var1, var3 - 1, var4 + 1, var5, Blocks.driedDirt.get().blockID, 0);
this.setBlockAndMetadata(var1, var3, var4 + 1, var5 + 1, Blocks.driedDirt.get().blockID, 0);
this.setBlockAndMetadata(var1, var3, var4 + 1, var5 - 1, Blocks.driedDirt.get().blockID, 0);
this.setBlockAndMetadata(var1, var3, var4 + 2, var5, Blocks.driedDirt.get().blockID, 0);
return true;
}
if (var999 == 1)
{
var1.setBlock(var3, var4, var5, Blocks.driedDirt.get().blockID);
this.setBlockAndMetadata(var1, var3, var4 + 1, var5, Blocks.driedDirt.get().blockID, 0);
return true;
}
return true;
}
}
}

View file

@ -0,0 +1,60 @@
package biomesoplenty.worldgen;
import java.util.Random;
import net.minecraft.block.Block;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
import biomesoplenty.api.Blocks;
public class WorldGenWasteland4 extends WorldGenerator
{
@Override
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 var95 = var1.getBlockId(var3 - 1, var4, var5);
int var96 = var1.getBlockId(var3 + 1, var4, var5);
int var97 = var1.getBlockId(var3, var4, var5 - 1);
int var98 = var1.getBlockId(var3, var4, var5 + 1);
if (var6 != Blocks.driedDirt.get().blockID || var95 != Blocks.driedDirt.get().blockID || var96 != Blocks.driedDirt.get().blockID || var97 != Blocks.driedDirt.get().blockID || var98 != Blocks.driedDirt.get().blockID )
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;
}
}
int var999 = var2.nextInt(2);
if (var999 == 0)
{
this.setBlock(var1, var3, var4 - 1, var5, 0);
this.setBlock(var1, var3 + 1, var4 - 1, var5, 0);
this.setBlock(var1, var3 - 1, var4 - 1, var5, 0);
this.setBlock(var1, var3, var4 - 1, var5 + 1, 0);
this.setBlock(var1, var3, var4 - 1, var5 - 1, 0);
this.setBlock(var1, var3, var4 - 2, var5, 0);
return true;
}
if (var999 == 1)
{
this.setBlock(var1, var3, var4 - 1, var5, 0);
return true;
}
return true;
}
}
}