Added Sublime Shrubland biome to Promised Land, fixed violet generation

This commit is contained in:
Matt Caughey 2013-11-14 02:50:25 -05:00
parent bb26696849
commit be3d2a6e55
31 changed files with 289 additions and 37 deletions

View file

@ -92,6 +92,7 @@ public class Biomes
public static Optional<? extends BiomeGenBase> promisedLandForest = Optional.absent(); public static Optional<? extends BiomeGenBase> promisedLandForest = Optional.absent();
public static Optional<? extends BiomeGenBase> promisedLandPlains = Optional.absent(); public static Optional<? extends BiomeGenBase> promisedLandPlains = Optional.absent();
public static Optional<? extends BiomeGenBase> promisedLandShrub = Optional.absent();
public static Optional<? extends BiomeGenBase> promisedLandSwamp = Optional.absent(); public static Optional<? extends BiomeGenBase> promisedLandSwamp = Optional.absent();
public static Optional<? extends BiomeGenBase> quagmire = Optional.absent(); public static Optional<? extends BiomeGenBase> quagmire = Optional.absent();

View file

@ -119,6 +119,7 @@ public class BlockReferences {
holyDirt (Blocks.holyDirt, 0), holyDirt (Blocks.holyDirt, 0),
holyStone (Blocks.holyStone, 0), holyStone (Blocks.holyStone, 0),
holyStoneCobble (Blocks.holyStone, 1), holyStoneCobble (Blocks.holyStone, 1),
holyStoneMossy (Blocks.holyStone, 3),
crystal (Blocks.crystal, 0), crystal (Blocks.crystal, 0),
cragRock (Blocks.cragRock, 0), cragRock (Blocks.cragRock, 0),
quicksand (Blocks.mud, 1), quicksand (Blocks.mud, 1),

View file

@ -45,7 +45,6 @@ import net.minecraftforge.event.terraingen.OreGenEvent;
import net.minecraftforge.event.terraingen.TerrainGen; import net.minecraftforge.event.terraingen.TerrainGen;
import biomesoplenty.api.Blocks; import biomesoplenty.api.Blocks;
import biomesoplenty.api.Fluids; import biomesoplenty.api.Fluids;
import biomesoplenty.configuration.configfile.BOPConfiguration;
import biomesoplenty.configuration.configfile.BOPConfigurationTerrainGen; import biomesoplenty.configuration.configfile.BOPConfigurationTerrainGen;
import biomesoplenty.worldgen.WorldGenAlgae; import biomesoplenty.worldgen.WorldGenAlgae;
import biomesoplenty.worldgen.WorldGenAsh; import biomesoplenty.worldgen.WorldGenAsh;
@ -80,10 +79,10 @@ import biomesoplenty.worldgen.WorldGenKelp;
import biomesoplenty.worldgen.WorldGenLilyflower; import biomesoplenty.worldgen.WorldGenLilyflower;
import biomesoplenty.worldgen.WorldGenMelon; import biomesoplenty.worldgen.WorldGenMelon;
import biomesoplenty.worldgen.WorldGenMesa; import biomesoplenty.worldgen.WorldGenMesa;
import biomesoplenty.worldgen.WorldGenMossySkystone;
import biomesoplenty.worldgen.WorldGenMud; import biomesoplenty.worldgen.WorldGenMud;
import biomesoplenty.worldgen.WorldGenMycelium; import biomesoplenty.worldgen.WorldGenMycelium;
import biomesoplenty.worldgen.WorldGenNetherGrass; import biomesoplenty.worldgen.WorldGenNetherGrass;
import biomesoplenty.worldgen.WorldGenNetherHive;
import biomesoplenty.worldgen.WorldGenNetherLava; import biomesoplenty.worldgen.WorldGenNetherLava;
import biomesoplenty.worldgen.WorldGenNetherVines; import biomesoplenty.worldgen.WorldGenNetherVines;
import biomesoplenty.worldgen.WorldGenNetherWart; import biomesoplenty.worldgen.WorldGenNetherWart;
@ -154,7 +153,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator
public WorldGenerator clayInStone2Gen; public WorldGenerator clayInStone2Gen;
public WorldGenerator quagmireGen; public WorldGenerator quagmireGen;
public WorldGenerator quicksandGen; public WorldGenerator quicksandGen;
public WorldGenerator hiveGen; public WorldGenerator mossySkystoneGen;
public WorldGenerator spongeGen; public WorldGenerator spongeGen;
public WorldGenerator canyonGen; public WorldGenerator canyonGen;
public WorldGenerator cloudGen; public WorldGenerator cloudGen;
@ -443,7 +442,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator
public boolean generateClouds; public boolean generateClouds;
public boolean generateQuicksand; public boolean generateQuicksand;
public boolean generateSponge; public boolean generateSponge;
public boolean generateHive; public boolean generateMossySkystone;
public BiomeDecoratorBOP(BiomeGenBase par1BiomeGenBase) public BiomeDecoratorBOP(BiomeGenBase par1BiomeGenBase)
{ {
@ -468,7 +467,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator
clayInStoneGen = new WorldGenBadlands3(Block.stainedClay.blockID, 32); clayInStoneGen = new WorldGenBadlands3(Block.stainedClay.blockID, 32);
clayInStone2Gen = new WorldGenBadlands(Block.stainedClay.blockID, 32); clayInStone2Gen = new WorldGenBadlands(Block.stainedClay.blockID, 32);
quagmireGen = new WorldGenQuagmire(Block.grass.blockID, 48); quagmireGen = new WorldGenQuagmire(Block.grass.blockID, 48);
hiveGen = new WorldGenNetherHive(Blocks.hive.get().blockID, 48); mossySkystoneGen = new WorldGenMossySkystone(Blocks.holyStone.get().blockID, 24);
quicksandGen = new WorldGenQuicksand(Blocks.mud.get().blockID, 24); quicksandGen = new WorldGenQuicksand(Blocks.mud.get().blockID, 24);
spongeGen = new WorldGenSponge(Block.sponge.blockID, 24); spongeGen = new WorldGenSponge(Block.sponge.blockID, 24);
canyonGen = new WorldGenCanyon(Blocks.redRock.get().blockID, 48); canyonGen = new WorldGenCanyon(Blocks.redRock.get().blockID, 48);
@ -659,8 +658,8 @@ public class BiomeDecoratorBOP extends BiomeDecorator
koruPerChunk = 0; koruPerChunk = 0;
waspHivesPerChunk = 0; waspHivesPerChunk = 0;
rootsPerChunk = 9; rootsPerChunk = 9;
stalagmitesPerChunk = 5; stalagmitesPerChunk = 3;
stalactitesPerChunk = 10; stalactitesPerChunk = 6;
cloudsPerChunk = 0; cloudsPerChunk = 0;
generateLakes = true; generateLakes = true;
generateAsh = false; generateAsh = false;
@ -682,7 +681,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator
generateClouds = false; generateClouds = false;
generateQuicksand = false; generateQuicksand = false;
generateSponge = false; generateSponge = false;
generateHive = false; generateMossySkystone = false;
biome = par1BiomeGenBase; biome = par1BiomeGenBase;
} }
@ -876,9 +875,9 @@ public class BiomeDecoratorBOP extends BiomeDecorator
this.genStandardOre1(15, quagmireGen, 64, 128); this.genStandardOre1(15, quagmireGen, 64, 128);
} }
if (generateHive) if (generateMossySkystone)
{ {
this.genStandardOre1(5, hiveGen, 0, 128); this.genStandardOre1(15, mossySkystoneGen, 0, 80);
} }
if (generateCanyon) if (generateCanyon)
@ -1357,7 +1356,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator
if (BOPConfigurationTerrainGen.stoneFormationGen) if (BOPConfigurationTerrainGen.stoneFormationGen)
{ {
var3 = chunk_X + randomGenerator.nextInt(16) + 8; var3 = chunk_X + randomGenerator.nextInt(16) + 8;
var4 = randomGenerator.nextInt(64); var4 = randomGenerator.nextInt(60);
var5 = chunk_Z + randomGenerator.nextInt(16) + 8; var5 = chunk_Z + randomGenerator.nextInt(16) + 8;
stalagmiteGen.generate(currentWorld, randomGenerator, var3, var4, var5); stalagmiteGen.generate(currentWorld, randomGenerator, var3, var4, var5);
} }
@ -1368,7 +1367,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator
if (BOPConfigurationTerrainGen.stoneFormationGen) if (BOPConfigurationTerrainGen.stoneFormationGen)
{ {
var3 = chunk_X + randomGenerator.nextInt(16) + 8; var3 = chunk_X + randomGenerator.nextInt(16) + 8;
var4 = randomGenerator.nextInt(64); var4 = randomGenerator.nextInt(60);
var5 = chunk_Z + randomGenerator.nextInt(16) + 8; var5 = chunk_Z + randomGenerator.nextInt(16) + 8;
stalactiteGen.generate(currentWorld, randomGenerator, var3, var4, var5); stalactiteGen.generate(currentWorld, randomGenerator, var3, var4, var5);
} }

View file

@ -21,10 +21,11 @@ public class BiomeGenAlpsForest extends BiomeGenBase
theBiomeDecorator = new BiomeDecoratorBOP(this); theBiomeDecorator = new BiomeDecoratorBOP(this);
customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator; customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
customBiomeDecorator.treesPerChunk = 8; customBiomeDecorator.treesPerChunk = 8;
customBiomeDecorator.flowersPerChunk = -999; customBiomeDecorator.flowersPerChunk = 2;
customBiomeDecorator.grassPerChunk = -999; customBiomeDecorator.grassPerChunk = 3;
customBiomeDecorator.sandPerChunk = -999; customBiomeDecorator.sandPerChunk = -999;
customBiomeDecorator.sandPerChunk2 = -999; customBiomeDecorator.sandPerChunk2 = -999;
customBiomeDecorator.violetsPerChunk = 2;
} }
@Override @Override

View file

@ -27,6 +27,7 @@ public class BiomeGenConiferousForestSnow extends BiomeGenBase
customBiomeDecorator.flowersPerChunk = -999; customBiomeDecorator.flowersPerChunk = -999;
customBiomeDecorator.shrubsPerChunk = 4; customBiomeDecorator.shrubsPerChunk = 4;
customBiomeDecorator.wheatGrassPerChunk = 1; customBiomeDecorator.wheatGrassPerChunk = 1;
customBiomeDecorator.violetsPerChunk = 3;
customBiomeDecorator.sandPerChunk = -999; customBiomeDecorator.sandPerChunk = -999;
customBiomeDecorator.sandPerChunk2 = -999; customBiomeDecorator.sandPerChunk2 = -999;
customBiomeDecorator.gravelPerChunk = 1; customBiomeDecorator.gravelPerChunk = 1;

View file

@ -28,6 +28,7 @@ public class BiomeGenDeadForestSnow extends BiomeGenBase
customBiomeDecorator.reedsPerChunk = -999; customBiomeDecorator.reedsPerChunk = -999;
customBiomeDecorator.wheatGrassPerChunk = 1; customBiomeDecorator.wheatGrassPerChunk = 1;
customBiomeDecorator.shrubsPerChunk = 1; customBiomeDecorator.shrubsPerChunk = 1;
customBiomeDecorator.violetsPerChunk = 1;
} }
@Override @Override

View file

@ -27,6 +27,7 @@ public class BiomeGenFrostForest extends BiomeGenBase implements IWCFog
customBiomeDecorator.shrubsPerChunk = 1; customBiomeDecorator.shrubsPerChunk = 1;
customBiomeDecorator.icyIrisPerChunk = 3; customBiomeDecorator.icyIrisPerChunk = 3;
customBiomeDecorator.wheatGrassPerChunk = 1; customBiomeDecorator.wheatGrassPerChunk = 1;
customBiomeDecorator.violetsPerChunk = 1;
customBiomeDecorator.generatePumpkins = false; customBiomeDecorator.generatePumpkins = false;
} }

View file

@ -21,7 +21,7 @@ public class BiomeGenMapleWoods extends BiomeGenBase
customBiomeDecorator.treesPerChunk = 9; customBiomeDecorator.treesPerChunk = 9;
customBiomeDecorator.grassPerChunk = 1; customBiomeDecorator.grassPerChunk = 1;
customBiomeDecorator.wheatGrassPerChunk = 1; customBiomeDecorator.wheatGrassPerChunk = 1;
customBiomeDecorator.violetsPerChunk = 1; customBiomeDecorator.violetsPerChunk = 2;
customBiomeDecorator.poisonIvyPerChunk = 1; customBiomeDecorator.poisonIvyPerChunk = 1;
customBiomeDecorator.shrubsPerChunk = 2; customBiomeDecorator.shrubsPerChunk = 2;
} }

View file

@ -29,7 +29,6 @@ public class BiomeGenSacredSprings extends BiomeGenBase implements IWCFog
customBiomeDecorator.grassPerChunk = 4; customBiomeDecorator.grassPerChunk = 4;
customBiomeDecorator.wheatGrassPerChunk = 1; customBiomeDecorator.wheatGrassPerChunk = 1;
customBiomeDecorator.waterlilyPerChunk = 5; customBiomeDecorator.waterlilyPerChunk = 5;
customBiomeDecorator.violetsPerChunk = 1;
customBiomeDecorator.generatePumpkins = false; customBiomeDecorator.generatePumpkins = false;
spawnableMonsterList.add(new SpawnListEntry(EntityJungleSpider.class, spawnableMonsterList.add(new SpawnListEntry(EntityJungleSpider.class,
12, 6, 6)); 12, 6, 6));

View file

@ -30,6 +30,7 @@ public class BiomeGenTundra extends BiomeGenBase
customBiomeDecorator.gravelPerChunk2 = 8; customBiomeDecorator.gravelPerChunk2 = 8;
customBiomeDecorator.shrubsPerChunk = 2; customBiomeDecorator.shrubsPerChunk = 2;
customBiomeDecorator.waterReedsPerChunk = 2; customBiomeDecorator.waterReedsPerChunk = 2;
customBiomeDecorator.violetsPerChunk = 1;
} }
@Override @Override

View file

@ -31,7 +31,7 @@ public class BiomeGenPromisedLandForest extends BiomeGenBase implements IWCFog
customBiomeDecorator.treesPerChunk = 20; customBiomeDecorator.treesPerChunk = 20;
customBiomeDecorator.grassPerChunk = -999; customBiomeDecorator.grassPerChunk = -999;
customBiomeDecorator.holyTallGrassPerChunk = 50; customBiomeDecorator.holyTallGrassPerChunk = 50;
customBiomeDecorator.promisedWillowPerChunk = 80; customBiomeDecorator.promisedWillowPerChunk = 40;
customBiomeDecorator.pinkFlowersPerChunk = 12; customBiomeDecorator.pinkFlowersPerChunk = 12;
customBiomeDecorator.rainbowflowersPerChunk = 10; customBiomeDecorator.rainbowflowersPerChunk = 10;
customBiomeDecorator.blueMilksPerChunk = 5; customBiomeDecorator.blueMilksPerChunk = 5;
@ -47,6 +47,7 @@ public class BiomeGenPromisedLandForest extends BiomeGenBase implements IWCFog
spawnableMonsterList.clear(); spawnableMonsterList.clear();
spawnableCaveCreatureList.clear(); spawnableCaveCreatureList.clear();
customBiomeDecorator.generatePumpkins = false; customBiomeDecorator.generatePumpkins = false;
customBiomeDecorator.generateMossySkystone = true;
//customBiomeDecorator.generateClouds = true; //customBiomeDecorator.generateClouds = true;
//this.customBiomeDecorator.generateLakes = false; //this.customBiomeDecorator.generateLakes = false;
theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8); theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8);
@ -71,7 +72,7 @@ public class BiomeGenPromisedLandForest extends BiomeGenBase implements IWCFog
@Override @Override
public WorldGenerator getRandomWorldGenForTrees(Random par1Random) public WorldGenerator getRandomWorldGenForTrees(Random par1Random)
{ {
return par1Random.nextInt(2) == 0 ? new WorldGenPromisedShrub(0,0) : (par1Random.nextInt(8) == 0 ? new WorldGenPromisedTree2(false) : new WorldGenPromisedTree(false)); return par1Random.nextInt(8) == 0 ? new WorldGenPromisedTree2(false) : new WorldGenPromisedTree(false);
} }
@Override @Override

View file

@ -26,7 +26,7 @@ public class BiomeGenPromisedLandPlains extends BiomeGenBase implements IWCFog
customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator; customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
topBlock = (byte)Blocks.holyGrass.get().blockID; topBlock = (byte)Blocks.holyGrass.get().blockID;
fillerBlock = (byte)Blocks.holyDirt.get().blockID; fillerBlock = (byte)Blocks.holyDirt.get().blockID;
customBiomeDecorator.treesPerChunk = 4; customBiomeDecorator.treesPerChunk = -999;
customBiomeDecorator.grassPerChunk = -999; customBiomeDecorator.grassPerChunk = -999;
customBiomeDecorator.holyTallGrassPerChunk = 999; customBiomeDecorator.holyTallGrassPerChunk = 999;
customBiomeDecorator.promisedWillowPerChunk = 80; customBiomeDecorator.promisedWillowPerChunk = 80;
@ -43,6 +43,7 @@ public class BiomeGenPromisedLandPlains extends BiomeGenBase implements IWCFog
spawnableMonsterList.clear(); spawnableMonsterList.clear();
spawnableCaveCreatureList.clear(); spawnableCaveCreatureList.clear();
customBiomeDecorator.generatePumpkins = false; customBiomeDecorator.generatePumpkins = false;
customBiomeDecorator.generateMossySkystone = true;
//customBiomeDecorator.generateClouds = true; //customBiomeDecorator.generateClouds = true;
//this.customBiomeDecorator.generateLakes = false; //this.customBiomeDecorator.generateLakes = false;
theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8); theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8);
@ -59,15 +60,6 @@ public class BiomeGenPromisedLandPlains extends BiomeGenBase implements IWCFog
} }
}*/ }*/
} }
/**
* Gets a WorldGen appropriate for this biome.
*/
@Override
public WorldGenerator getRandomWorldGenForTrees(Random par1Random)
{
return new WorldGenPromisedBush();
}
@Override @Override
public int getBiomeGrassColor() public int getBiomeGrassColor()

View file

@ -0,0 +1,143 @@
package biomesoplenty.biomes.promisedland;
import java.awt.Color;
import java.util.Random;
import net.minecraft.block.Block;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.gen.feature.WorldGenShrub;
import net.minecraft.world.gen.feature.WorldGenerator;
import worldcore.interfaces.IWCFog;
import biomesoplenty.api.Blocks;
import biomesoplenty.biomes.BiomeDecoratorBOP;
import biomesoplenty.configuration.configfile.BOPConfigurationMisc;
import biomesoplenty.worldgen.WorldGenPromisedShrub;
import biomesoplenty.worldgen.WorldGenWaterSpring;
public class BiomeGenPromisedLandShrub extends BiomeGenBase implements IWCFog
{
private WorldGenerator theWorldGenerator;
private BiomeDecoratorBOP customBiomeDecorator;
public BiomeGenPromisedLandShrub(int par1)
{
super(par1);
theBiomeDecorator = new BiomeDecoratorBOP(this);
customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
topBlock = (byte)Blocks.holyGrass.get().blockID;
fillerBlock = (byte)Blocks.holyDirt.get().blockID;
customBiomeDecorator.treesPerChunk = 50;
customBiomeDecorator.grassPerChunk = -999;
customBiomeDecorator.holyTallGrassPerChunk = 10;
customBiomeDecorator.promisedWillowPerChunk = 80;
customBiomeDecorator.rainbowflowersPerChunk = 5;
customBiomeDecorator.generateLakes = false;
customBiomeDecorator.pondsPerChunk = -100;
customBiomeDecorator.crystalsPerChunk = 25;
customBiomeDecorator.crystals2PerChunk = 50;
customBiomeDecorator.cloudsPerChunk = 1;
spawnableCreatureList.clear();
spawnableWaterCreatureList.clear();
spawnableMonsterList.clear();
spawnableCaveCreatureList.clear();
customBiomeDecorator.generatePumpkins = false;
customBiomeDecorator.generateMossySkystone = true;
//customBiomeDecorator.generateClouds = true;
//this.customBiomeDecorator.generateLakes = false;
theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8);
/*if (Loader.isModLoaded("TwilightForest"))
{
try {
this.spawnableMonsterList.add(new SpawnListEntry(Class.forName("twilightforest.entity.passive.EntityTFBird"), 2, 1, 3));
this.spawnableMonsterList.add(new SpawnListEntry(Class.forName("twilightforest.entity.passive.EntityTFBunny"), 4, 1, 3));
this.spawnableMonsterList.add(new SpawnListEntry(Class.forName("twilightforest.entity.passive.EntityTFSquirrel"), 4, 1, 2));
} catch (ClassNotFoundException e) {
System.out.println("[BiomesOPlenty] There was an error while integrating Twilight Forest with Biomes O' Plenty!");
e.printStackTrace();
}
}*/
}
/**
* Gets a WorldGen appropriate for this biome.
*/
@Override
public WorldGenerator getRandomWorldGenForTrees(Random par1Random)
{
return new WorldGenPromisedShrub(0, 0);
}
@Override
public int getBiomeGrassColor()
{
return 7925125;
}
/**
* Provides the basic foliage color based on the biome temperature and rainfall
*/
@Override
public int getBiomeFoliageColor()
{
return 7925125;
}
@Override
public int getFogColour()
{
return 16754234;
}
@Override
public float getFogCloseness()
{
// TODO Auto-generated method stub
return 1.0F;
}
@Override
public void decorate(World par1World, Random par2Random, int par3, int par4)
{
super.decorate(par1World, par2Random, par3, par4);
int var5 = 100;
int var6;
int var7;
int var8;
for (var5 = 0; var5 < 10; ++var5)
{
var6 = par3 + par2Random.nextInt(16);
var7 = par2Random.nextInt(60);
var8 = par4 + par2Random.nextInt(16);
theWorldGenerator.generate(par1World, par2Random, var6, var7, var8);
}
}
/**
* takes temperature, returns color
*/
@Override
public int getSkyColorByTemp(float par1)
{
if (BOPConfigurationMisc.skyColors)
return BOPConfigurationMisc.promisedLandSkyColor;
else
{
par1 /= 3.0F;
if (par1 < -1.0F)
{
par1 = -1.0F;
}
if (par1 > 1.0F)
{
par1 = 1.0F;
}
return Color.getHSBColor(0.62222224F - par1 * 0.05F, 0.5F + par1 * 0.1F, 1.0F).getRGB();
}
}
}

View file

@ -30,7 +30,7 @@ public class BiomeGenPromisedLandSwamp extends BiomeGenBase implements IWCFog
customBiomeDecorator.treesPerChunk = 12; customBiomeDecorator.treesPerChunk = 12;
customBiomeDecorator.grassPerChunk = -999; customBiomeDecorator.grassPerChunk = -999;
customBiomeDecorator.holyTallGrassPerChunk = 100; customBiomeDecorator.holyTallGrassPerChunk = 100;
customBiomeDecorator.promisedWillowPerChunk = 80; customBiomeDecorator.promisedWillowPerChunk = 40;
customBiomeDecorator.pinkFlowersPerChunk = 6; customBiomeDecorator.pinkFlowersPerChunk = 6;
customBiomeDecorator.rainbowflowersPerChunk = 5; customBiomeDecorator.rainbowflowersPerChunk = 5;
customBiomeDecorator.blueMilksPerChunk = 15; customBiomeDecorator.blueMilksPerChunk = 15;
@ -48,6 +48,7 @@ public class BiomeGenPromisedLandSwamp extends BiomeGenBase implements IWCFog
spawnableMonsterList.clear(); spawnableMonsterList.clear();
spawnableCaveCreatureList.clear(); spawnableCaveCreatureList.clear();
customBiomeDecorator.generatePumpkins = false; customBiomeDecorator.generatePumpkins = false;
customBiomeDecorator.generateMossySkystone = true;
//customBiomeDecorator.generateClouds = true; //customBiomeDecorator.generateClouds = true;
//this.customBiomeDecorator.generateLakes = false; //this.customBiomeDecorator.generateLakes = false;
theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8); theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8);
@ -71,7 +72,7 @@ public class BiomeGenPromisedLandSwamp extends BiomeGenBase implements IWCFog
@Override @Override
public WorldGenerator getRandomWorldGenForTrees(Random par1Random) public WorldGenerator getRandomWorldGenForTrees(Random par1Random)
{ {
return par1Random.nextInt(6) == 0 ? new WorldGenPromisedTree(false) : new WorldGenPromisedWillowTree(); return new WorldGenPromisedWillowTree();
} }
@Override @Override

View file

@ -14,7 +14,7 @@ import biomesoplenty.BiomesOPlenty;
public class BlockBOPSkystone extends Block public class BlockBOPSkystone extends Block
{ {
private static final String[] types = new String[] {"holystone", "holycobble", "holybrick"}; private static final String[] types = new String[] {"holystone", "holycobble", "holybrick", "holystonemossy"};
private Icon[] textures = {null, null, null}; private Icon[] textures = {null, null, null};
public BlockBOPSkystone(int par1) public BlockBOPSkystone(int par1)
@ -60,7 +60,16 @@ public class BlockBOPSkystone extends Block
@Override @Override
public int damageDropped(int meta) public int damageDropped(int meta)
{ {
return meta == 0 ? 1 : meta; if (meta == 0)
{
return 1;
}
if (meta == 3)
{
return 1;
}
return meta;
} }
@Override @Override
@ -82,6 +91,10 @@ public class BlockBOPSkystone extends Block
case 2: case 2:
hardness = 1.1F; hardness = 1.1F;
break; break;
case 3:
hardness = 1.0F;
break;
} }
return hardness; return hardness;

View file

@ -104,6 +104,11 @@ public class BOPAchievements
player.addStat(BOPAchievements.achPromised, 1); player.addStat(BOPAchievements.achPromised, 1);
} }
if (biomeID == Biomes.promisedLandShrub.get().biomeID)
{
player.addStat(BOPAchievements.achPromised, 1);
}
if (biomeID == Biomes.promisedLandSwamp.get().biomeID) if (biomeID == Biomes.promisedLandSwamp.get().biomeID)
{ {
player.addStat(BOPAchievements.achPromised, 1); player.addStat(BOPAchievements.achPromised, 1);

View file

@ -115,6 +115,7 @@ import biomesoplenty.biomes.ocean.BiomeGenOceanCoral;
import biomesoplenty.biomes.ocean.BiomeGenOceanKelp; import biomesoplenty.biomes.ocean.BiomeGenOceanKelp;
import biomesoplenty.biomes.promisedland.BiomeGenPromisedLandForest; import biomesoplenty.biomes.promisedland.BiomeGenPromisedLandForest;
import biomesoplenty.biomes.promisedland.BiomeGenPromisedLandPlains; import biomesoplenty.biomes.promisedland.BiomeGenPromisedLandPlains;
import biomesoplenty.biomes.promisedland.BiomeGenPromisedLandShrub;
import biomesoplenty.biomes.promisedland.BiomeGenPromisedLandSwamp; import biomesoplenty.biomes.promisedland.BiomeGenPromisedLandSwamp;
import biomesoplenty.biomes.vanilla.BiomeGenDesertNew; import biomesoplenty.biomes.vanilla.BiomeGenDesertNew;
import biomesoplenty.biomes.vanilla.BiomeGenForestNew; import biomesoplenty.biomes.vanilla.BiomeGenForestNew;
@ -264,6 +265,7 @@ public class BOPBiomes {
Biomes.promisedLandForest = Optional.of((new BiomeGenPromisedLandForest(BOPConfigurationIDs.promisedLandForestID)).setColor(7925125).setBiomeName("Wonderous Woods").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F)); Biomes.promisedLandForest = Optional.of((new BiomeGenPromisedLandForest(BOPConfigurationIDs.promisedLandForestID)).setColor(7925125).setBiomeName("Wonderous Woods").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F));
Biomes.promisedLandPlains = Optional.of((new BiomeGenPromisedLandPlains(BOPConfigurationIDs.promisedLandPlainsID)).setColor(13433204).setBiomeName("Majestic Meadow").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F)); Biomes.promisedLandPlains = Optional.of((new BiomeGenPromisedLandPlains(BOPConfigurationIDs.promisedLandPlainsID)).setColor(13433204).setBiomeName("Majestic Meadow").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F));
Biomes.promisedLandShrub = Optional.of((new BiomeGenPromisedLandShrub(BOPConfigurationIDs.promisedLandShrubID)).setColor(13433204).setBiomeName("Sublime Shrubland").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F));
Biomes.promisedLandSwamp = Optional.of((new BiomeGenPromisedLandSwamp(BOPConfigurationIDs.promisedLandSwampID)).setColor(3447145).setBiomeName("Blessed Bog").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F)); Biomes.promisedLandSwamp = Optional.of((new BiomeGenPromisedLandSwamp(BOPConfigurationIDs.promisedLandSwampID)).setColor(3447145).setBiomeName("Blessed Bog").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F));
Biomes.quagmire = Optional.of((new BiomeGenQuagmire(BOPConfigurationIDs.quagmireID)).setColor(5257771).setBiomeName("Quagmire").func_76733_a(9154376).setMinMaxHeight(0.2F, 0.3F).setTemperatureRainfall(0.8F, 0.9F)); Biomes.quagmire = Optional.of((new BiomeGenQuagmire(BOPConfigurationIDs.quagmireID)).setColor(5257771).setBiomeName("Quagmire").func_76733_a(9154376).setMinMaxHeight(0.2F, 0.3F).setTemperatureRainfall(0.8F, 0.9F));
@ -410,6 +412,7 @@ public class BOPBiomes {
BiomeDictionary.registerBiomeType(Biomes.promisedLandForest.get(), Type.FOREST, Type.MAGICAL); BiomeDictionary.registerBiomeType(Biomes.promisedLandForest.get(), Type.FOREST, Type.MAGICAL);
BiomeDictionary.registerBiomeType(Biomes.promisedLandPlains.get(), Type.PLAINS, Type.MAGICAL); BiomeDictionary.registerBiomeType(Biomes.promisedLandPlains.get(), Type.PLAINS, Type.MAGICAL);
BiomeDictionary.registerBiomeType(Biomes.promisedLandShrub.get(), Type.PLAINS, Type.FOREST, Type.MAGICAL);
BiomeDictionary.registerBiomeType(Biomes.promisedLandSwamp.get(), Type.SWAMP, Type.MAGICAL); BiomeDictionary.registerBiomeType(Biomes.promisedLandSwamp.get(), Type.SWAMP, Type.MAGICAL);
BiomeDictionary.registerBiomeType(Biomes.quagmire.get(), Type.WASTELAND, Type.SWAMP); BiomeDictionary.registerBiomeType(Biomes.quagmire.get(), Type.WASTELAND, Type.SWAMP);

View file

@ -106,9 +106,9 @@ public class BOPEntities {
registerEntityEgg(EntityBird.class, 5277691, 16772788); registerEntityEgg(EntityBird.class, 5277691, 16772788);
if (Biomes.promisedLandForest.isPresent() && Biomes.promisedLandSwamp.isPresent() && Biomes.promisedLandPlains.isPresent()) if (Biomes.promisedLandForest.isPresent() && Biomes.promisedLandSwamp.isPresent() && Biomes.promisedLandPlains.isPresent() && Biomes.promisedLandShrub.isPresent())
{ {
EntityRegistry.addSpawn(EntityBird.class, 10, 3, 5, EnumCreatureType.creature, Biomes.promisedLandForest.get(), Biomes.promisedLandSwamp.get(), Biomes.promisedLandPlains.get()); EntityRegistry.addSpawn(EntityBird.class, 10, 3, 5, EnumCreatureType.creature, Biomes.promisedLandForest.get(), Biomes.promisedLandSwamp.get(), Biomes.promisedLandPlains.get(), Biomes.promisedLandShrub.get());
} }
} }
} }

View file

@ -242,6 +242,7 @@ public class BOPConfigurationIDs
public static int promisedLandForestID; public static int promisedLandForestID;
public static int promisedLandPlainsID; public static int promisedLandPlainsID;
public static int promisedLandShrubID;
public static int promisedLandSwampID; public static int promisedLandSwampID;
public static int quagmireID; public static int quagmireID;
@ -496,6 +497,7 @@ public class BOPConfigurationIDs
//23-79 ExtraBiomesXL //23-79 ExtraBiomesXL
promisedLandShrubID = config.get("Biome IDs", "Sublime Shrubland (Promised Land) ID", 28).getInt();
mysticGroveThinID = config.get("Biome IDs", "Thinned Mystic Grove (Sub-Biome) ID", 29).getInt(); mysticGroveThinID = config.get("Biome IDs", "Thinned Mystic Grove (Sub-Biome) ID", 29).getInt();
netherBloodID = config.get("Biome IDs", "Bloody Heap (Nether) ID", 30).getInt(); netherBloodID = config.get("Biome IDs", "Bloody Heap (Nether) ID", 30).getInt();
lavenderFieldsID = config.get("Biome IDs", "Lavender Fields ID", 31).getInt(); lavenderFieldsID = config.get("Biome IDs", "Lavender Fields ID", 31).getInt();

View file

@ -16,6 +16,7 @@ public class BCIntegration {
{ {
FMLInterModComms.sendMessage("BuildCraft|Energy", "oil-gen-exclude", Integer.toString(Biomes.promisedLandForest.get().biomeID)); FMLInterModComms.sendMessage("BuildCraft|Energy", "oil-gen-exclude", Integer.toString(Biomes.promisedLandForest.get().biomeID));
FMLInterModComms.sendMessage("BuildCraft|Energy", "oil-gen-exclude", Integer.toString(Biomes.promisedLandPlains.get().biomeID)); FMLInterModComms.sendMessage("BuildCraft|Energy", "oil-gen-exclude", Integer.toString(Biomes.promisedLandPlains.get().biomeID));
FMLInterModComms.sendMessage("BuildCraft|Energy", "oil-gen-exclude", Integer.toString(Biomes.promisedLandShrub.get().biomeID));
FMLInterModComms.sendMessage("BuildCraft|Energy", "oil-gen-exclude", Integer.toString(Biomes.promisedLandSwamp.get().biomeID)); FMLInterModComms.sendMessage("BuildCraft|Energy", "oil-gen-exclude", Integer.toString(Biomes.promisedLandSwamp.get().biomeID));
FMLInterModComms.sendMessage("BuildCraft|Energy", "oil-gen-exclude", Integer.toString(Biomes.netherBase.get().biomeID)); FMLInterModComms.sendMessage("BuildCraft|Energy", "oil-gen-exclude", Integer.toString(Biomes.netherBase.get().biomeID));

View file

@ -58,6 +58,7 @@ public class ForestryIntegration
EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.volcanoID); EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.volcanoID);
EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.wastelandID); EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.wastelandID);
EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.promisedLandPlainsID); EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.promisedLandPlainsID);
EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.promisedLandShrubID);
EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.deadForestID); EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.deadForestID);
EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.desertNewID); EnumTemperature.hotBiomeIds.add(BOPConfigurationIDs.desertNewID);
@ -70,6 +71,7 @@ public class ForestryIntegration
EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.volcanoID); EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.volcanoID);
EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.wastelandID); EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.wastelandID);
EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.promisedLandPlainsID); EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.promisedLandPlainsID);
EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.promisedLandShrubID);
EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.deadForestID); EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.deadForestID);
EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.desertNewID); EnumHumidity.aridBiomeIds.add(BOPConfigurationIDs.desertNewID);

View file

@ -5,7 +5,7 @@ import net.minecraft.item.ItemStack;
public class ItemBlockSkystone extends ItemBlock public class ItemBlockSkystone extends ItemBlock
{ {
private static final String[] types = new String[] {"holystone", "holycobble", "holybrick"}; private static final String[] types = new String[] {"holystone", "holycobble", "holybrick", "holystonemossy"};
public ItemBlockSkystone(int par1) public ItemBlockSkystone(int par1)
{ {

View file

@ -18,7 +18,7 @@ public class WorldProviderPromised extends WorldProvider
@Override @Override
public void registerWorldChunkManager() public void registerWorldChunkManager()
{ {
if (Biomes.promisedLandForest.isPresent() || Biomes.promisedLandPlains.isPresent() || Biomes.promisedLandSwamp.isPresent()) if (Biomes.promisedLandForest.isPresent() || Biomes.promisedLandPlains.isPresent() || Biomes.promisedLandShrub.isPresent() || Biomes.promisedLandSwamp.isPresent())
{ {
worldChunkMgr = new WorldChunkManagerPromised(worldObj); worldChunkMgr = new WorldChunkManagerPromised(worldObj);
} }

View file

@ -104,6 +104,10 @@ public class BiomeLayerBiomes extends BiomeLayer
{ {
promisedBiomes.add(Biomes.promisedLandPlains.get()); promisedBiomes.add(Biomes.promisedLandPlains.get());
} }
if (Biomes.promisedLandShrub.isPresent())
{
promisedBiomes.add(Biomes.promisedLandShrub.get());
}
if (Biomes.promisedLandSwamp.isPresent()) if (Biomes.promisedLandSwamp.isPresent())
{ {
promisedBiomes.add(Biomes.promisedLandSwamp.get()); promisedBiomes.add(Biomes.promisedLandSwamp.get());

View file

@ -0,0 +1,79 @@
package biomesoplenty.worldgen;
import java.util.Random;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
import biomesoplenty.api.Blocks;
public class WorldGenMossySkystone extends WorldGenerator
{
/** The block ID of the ore to be placed using this generator. */
private int minableBlockId;
/** The number of blocks to generate. */
private int numberOfBlocks;
public WorldGenMossySkystone(int par1, int par2)
{
minableBlockId = par1;
numberOfBlocks = par2;
}
@Override
public boolean generate(World par1World, Random par2Random, int par3, int par4, int par5)
{
float var6 = par2Random.nextFloat() * (float)Math.PI;
double var7 = par3 + 8 + MathHelper.sin(var6) * numberOfBlocks / 8.0F;
double var9 = par3 + 8 - MathHelper.sin(var6) * numberOfBlocks / 8.0F;
double var11 = par5 + 8 + MathHelper.cos(var6) * numberOfBlocks / 8.0F;
double var13 = par5 + 8 - MathHelper.cos(var6) * numberOfBlocks / 8.0F;
double var15 = par4 + par2Random.nextInt(3) - 2;
double var17 = par4 + par2Random.nextInt(3) - 2;
for (int var19 = 0; var19 <= numberOfBlocks; ++var19)
{
double var20 = var7 + (var9 - var7) * var19 / numberOfBlocks;
double var22 = var15 + (var17 - var15) * var19 / numberOfBlocks;
double var24 = var11 + (var13 - var11) * var19 / numberOfBlocks;
double var26 = par2Random.nextDouble() * numberOfBlocks / 16.0D;
double var28 = (MathHelper.sin(var19 * (float)Math.PI / numberOfBlocks) + 1.0F) * var26 + 1.0D;
double var30 = (MathHelper.sin(var19 * (float)Math.PI / numberOfBlocks) + 1.0F) * var26 + 1.0D;
int var32 = MathHelper.floor_double(var20 - var28 / 2.0D);
int var33 = MathHelper.floor_double(var22 - var30 / 2.0D);
int var34 = MathHelper.floor_double(var24 - var28 / 2.0D);
int var35 = MathHelper.floor_double(var20 + var28 / 2.0D);
int var36 = MathHelper.floor_double(var22 + var30 / 2.0D);
int var37 = MathHelper.floor_double(var24 + var28 / 2.0D);
for (int var38 = var32; var38 <= var35; ++var38)
{
double var39 = (var38 + 0.5D - var20) / (var28 / 2.0D);
if (var39 * var39 < 1.0D)
{
for (int var41 = var33; var41 <= var36; ++var41)
{
double var42 = (var41 + 0.5D - var22) / (var30 / 2.0D);
if (var39 * var39 + var42 * var42 < 1.0D)
{
for (int var44 = var34; var44 <= var37; ++var44)
{
double var45 = (var44 + 0.5D - var24) / (var28 / 2.0D);
if (var39 * var39 + var42 * var42 + var45 * var45 < 1.0D && par1World.getBlockId(var38, var41, var44) == Blocks.holyStone.get().blockID && par1World.getBlockMetadata(var38, var41, var44) == 0)
{
par1World.setBlock(var38, var41, var44, minableBlockId, 3, 2);
}
}
}
}
}
}
}
return true;
}
}

View file

@ -49,7 +49,7 @@ tile.bop.flowers.rainbowflower.name=Chromaflora
tile.bop.flowers.bromeliad.name=Bromeliad tile.bop.flowers.bromeliad.name=Bromeliad
tile.bop.flowers.sunflowerbottom.name=Sunflower tile.bop.flowers.sunflowerbottom.name=Sunflower
tile.bop.flowers.sunflowertop.name=Sunflower tile.bop.flowers.sunflowertop.name=Sunflower
tile.bop.flowers.dandelion.name=White Dandelion tile.bop.flowers.dandelion.name=Dandelion Puff
tile.bop.flowers2.hibiscus.name=Pink Hibiscus tile.bop.flowers2.hibiscus.name=Pink Hibiscus
tile.bop.flowers2.lilyofthevalley.name=Lily of the Valley tile.bop.flowers2.lilyofthevalley.name=Lily of the Valley
@ -136,6 +136,7 @@ tile.bop.holyGrass.smolderinggrass.name=Smoldering Grass Block
tile.bop.holyStone.holystone.name=Skystone tile.bop.holyStone.holystone.name=Skystone
tile.bop.holyStone.holycobble.name=Skystone Cobblestone tile.bop.holyStone.holycobble.name=Skystone Cobblestone
tile.bop.holyStone.holybrick.name=Skystone Bricks tile.bop.holyStone.holybrick.name=Skystone Bricks
tile.bop.holyStone.holystonemossy.name=Mossy Skystone
tile.bop.holyCobbleStairs.name=Skystone Cobblestone Stairs tile.bop.holyCobbleStairs.name=Skystone Cobblestone Stairs
tile.bop.holyBricksStairs.name=Skystone Bricks Stairs tile.bop.holyBricksStairs.name=Skystone Bricks Stairs

Binary file not shown.

Before

Width:  |  Height:  |  Size: 457 B

After

Width:  |  Height:  |  Size: 563 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 565 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 661 B

After

Width:  |  Height:  |  Size: 695 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 321 B

After

Width:  |  Height:  |  Size: 512 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 612 B