Finished up the Promised Land sub-biomes. Added item textures for the flower bands.

This commit is contained in:
Matt Caughey 2013-05-09 09:38:48 -04:00
parent ab65df145f
commit 7823b2c727
40 changed files with 502 additions and 79 deletions

View file

@ -59,7 +59,7 @@ public class Biomes
public static Optional<? extends BiomeGenBase> promisedLandPlains = Optional.absent(); public static Optional<? extends BiomeGenBase> promisedLandPlains = Optional.absent();
public static Optional<? extends BiomeGenBase> promisedLandDesert = Optional.absent(); public static Optional<? extends BiomeGenBase> promisedLandDesert = Optional.absent();
public static Optional<? extends BiomeGenBase> promisedLandSwamp = Optional.absent(); public static Optional<? extends BiomeGenBase> promisedLandSwamp = Optional.absent();
public static Optional<? extends BiomeGenBase> promisedLandCrystals = Optional.absent(); public static Optional<? extends BiomeGenBase> promisedLandMushroom = Optional.absent();
public static Optional<? extends BiomeGenBase> quagmire = Optional.absent(); public static Optional<? extends BiomeGenBase> quagmire = Optional.absent();
public static Optional<? extends BiomeGenBase> rainforest = Optional.absent(); public static Optional<? extends BiomeGenBase> rainforest = Optional.absent();
public static Optional<? extends BiomeGenBase> redwoodForest = Optional.absent(); public static Optional<? extends BiomeGenBase> redwoodForest = Optional.absent();

View file

@ -100,7 +100,9 @@ public class BlockReferences {
hardSand (Blocks.hardSand, 0), hardSand (Blocks.hardSand, 0),
hardDirt (Blocks.hardDirt, 0), hardDirt (Blocks.hardDirt, 0),
holyGrass (Blocks.holyGrass, 0), holyGrass (Blocks.holyGrass, 0),
holyDirt (Blocks.holyDirt, 0),
holyStone (Blocks.holyStone, 0), holyStone (Blocks.holyStone, 0),
holySand (Blocks.holySand, 0),
cragRock (Blocks.cragRock, 0), cragRock (Blocks.cragRock, 0),
quicksand (Blocks.mud, 1), quicksand (Blocks.mud, 1),
smolderingGrass (Blocks.holyGrass, 1), smolderingGrass (Blocks.holyGrass, 1),

View file

@ -19,7 +19,9 @@ public class Blocks
public static Optional<? extends Block> hardIce = Optional.absent(); public static Optional<? extends Block> hardIce = Optional.absent();
public static Optional<? extends Block> hardSand = Optional.absent(); public static Optional<? extends Block> hardSand = Optional.absent();
public static Optional<? extends Block> holyGrass = Optional.absent(); public static Optional<? extends Block> holyGrass = Optional.absent();
public static Optional<? extends Block> holyDirt = Optional.absent();
public static Optional<? extends Block> holyStone = Optional.absent(); public static Optional<? extends Block> holyStone = Optional.absent();
public static Optional<? extends Block> holySand = Optional.absent();
public static Optional<? extends Block> mud = Optional.absent(); public static Optional<? extends Block> mud = Optional.absent();
public static Optional<? extends Block> originGrass = Optional.absent(); public static Optional<? extends Block> originGrass = Optional.absent();
public static Optional<? extends Block> redRock = Optional.absent(); public static Optional<? extends Block> redRock = Optional.absent();

View file

@ -6,10 +6,13 @@ import java.util.Random;
import biomesoplenty.api.Blocks; import biomesoplenty.api.Blocks;
import biomesoplenty.configuration.BOPBlocks; import biomesoplenty.configuration.BOPBlocks;
import biomesoplenty.configuration.BOPConfiguration; import biomesoplenty.configuration.BOPConfiguration;
import biomesoplenty.worldgen.WorldGenPalmTree1;
import biomesoplenty.worldgen.WorldGenPalmTree3;
import biomesoplenty.worldgen.WorldGenPromisedShrub; import biomesoplenty.worldgen.WorldGenPromisedShrub;
import biomesoplenty.worldgen.WorldGenPromisedTree; import biomesoplenty.worldgen.WorldGenPromisedTree;
import biomesoplenty.worldgen.WorldGenPromisedTree2; import biomesoplenty.worldgen.WorldGenPromisedTree2;
import biomesoplenty.worldgen.WorldGenPromisedTree3; import biomesoplenty.worldgen.WorldGenPromisedTree3;
import biomesoplenty.worldgen.WorldGenWaterSpring;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.world.World; import net.minecraft.world.World;
@ -27,22 +30,25 @@ public class BiomeGenPromisedLandDesert extends BiomeGenBase
super(par1); super(par1);
this.theBiomeDecorator = new BiomeDecoratorBOP(this); this.theBiomeDecorator = new BiomeDecoratorBOP(this);
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator; this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
this.topBlock = (byte)Block.sand.blockID; this.topBlock = (byte)Blocks.holySand.get().blockID;
this.fillerBlock = (byte)Block.sand.blockID; this.fillerBlock = (byte)Blocks.holySand.get().blockID;
this.customBiomeDecorator.treesPerChunk = -999; this.customBiomeDecorator.treesPerChunk = 4;
this.customBiomeDecorator.grassPerChunk = -999; this.customBiomeDecorator.grassPerChunk = -999;
this.customBiomeDecorator.cactiPerChunk = 5; //this.customBiomeDecorator.cactiPerChunk = 5;
this.customBiomeDecorator.promisedWillowPerChunk = 80;
this.customBiomeDecorator.tinyCactiPerChunk = 10; this.customBiomeDecorator.tinyCactiPerChunk = 10;
this.customBiomeDecorator.aloePerChunk = 2; this.customBiomeDecorator.aloePerChunk = 2;
this.customBiomeDecorator.generateLakes = false; this.customBiomeDecorator.generateLakes = false;
this.customBiomeDecorator.pondsPerChunk = -100; this.customBiomeDecorator.pondsPerChunk = -100;
this.customBiomeDecorator.waterLakesPerChunk = 2;
this.spawnableCreatureList.clear(); this.spawnableCreatureList.clear();
this.spawnableWaterCreatureList.clear(); this.spawnableWaterCreatureList.clear();
this.spawnableMonsterList.clear(); this.spawnableMonsterList.clear();
this.spawnableCaveCreatureList.clear(); this.spawnableCaveCreatureList.clear();
this.customBiomeDecorator.generatePumpkins = false; this.customBiomeDecorator.generatePumpkins = true;
this.customBiomeDecorator.generateMelons = true;
this.customBiomeDecorator.generateLakes = false; this.customBiomeDecorator.generateLakes = false;
this.theWorldGenerator = new WorldGenMinable(Block.waterMoving.blockID, 8); this.theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8);
} }
/** /**
@ -50,7 +56,7 @@ public class BiomeGenPromisedLandDesert extends BiomeGenBase
*/ */
public WorldGenerator getRandomWorldGenForTrees(Random par1Random) public WorldGenerator getRandomWorldGenForTrees(Random par1Random)
{ {
return (WorldGenerator)(par1Random.nextInt(2) == 0 ? new WorldGenPromisedShrub(0, 0) : (par1Random.nextInt(4) == 0 ? new WorldGenPromisedTree3(false) : (par1Random.nextInt(8) == 0 ? new WorldGenPromisedTree2(false) : new WorldGenPromisedTree(false)))); return (WorldGenerator)(par1Random.nextInt(3) == 0 ? new WorldGenPalmTree3() : new WorldGenPalmTree1());
} }
/** /**
@ -69,7 +75,7 @@ public class BiomeGenPromisedLandDesert extends BiomeGenBase
int var7; int var7;
int var8; int var8;
for (var5 = 0; var5 < 5; ++var5) for (var5 = 0; var5 < 10; ++var5)
{ {
var6 = par3 + par2Random.nextInt(16); var6 = par3 + par2Random.nextInt(16);
var7 = par2Random.nextInt(60); var7 = par2Random.nextInt(60);

View file

@ -10,6 +10,7 @@ import biomesoplenty.worldgen.WorldGenPromisedShrub;
import biomesoplenty.worldgen.WorldGenPromisedTree; import biomesoplenty.worldgen.WorldGenPromisedTree;
import biomesoplenty.worldgen.WorldGenPromisedTree2; import biomesoplenty.worldgen.WorldGenPromisedTree2;
import biomesoplenty.worldgen.WorldGenPromisedTree3; import biomesoplenty.worldgen.WorldGenPromisedTree3;
import biomesoplenty.worldgen.WorldGenWaterSpring;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.world.World; import net.minecraft.world.World;
@ -28,24 +29,23 @@ public class BiomeGenPromisedLandForest extends BiomeGenBase
this.theBiomeDecorator = new BiomeDecoratorBOP(this); this.theBiomeDecorator = new BiomeDecoratorBOP(this);
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator; this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
this.topBlock = (byte)Blocks.holyGrass.get().blockID; this.topBlock = (byte)Blocks.holyGrass.get().blockID;
this.fillerBlock = (byte)Blocks.holyStone.get().blockID; this.fillerBlock = (byte)Blocks.holyDirt.get().blockID;
this.customBiomeDecorator.treesPerChunk = 8; this.customBiomeDecorator.treesPerChunk = 12;
this.customBiomeDecorator.grassPerChunk = -999; this.customBiomeDecorator.grassPerChunk = -999;
this.customBiomeDecorator.holyTallGrassPerChunk = 50; this.customBiomeDecorator.holyTallGrassPerChunk = 50;
this.customBiomeDecorator.promisedWillowPerChunk = 40; this.customBiomeDecorator.promisedWillowPerChunk = 80;
this.customBiomeDecorator.pinkFlowersPerChunk = 6; this.customBiomeDecorator.pinkFlowersPerChunk = 6;
this.customBiomeDecorator.glowFlowersPerChunk = 3;
this.customBiomeDecorator.blueMilksPerChunk = 5; this.customBiomeDecorator.blueMilksPerChunk = 5;
this.customBiomeDecorator.generateLakes = false; this.customBiomeDecorator.generateLakes = false;
this.customBiomeDecorator.pondsPerChunk = -100; this.customBiomeDecorator.pondsPerChunk = -100;
this.customBiomeDecorator.waterLakesPerChunk = 5; this.customBiomeDecorator.waterLakesPerChunk = 8;
this.spawnableCreatureList.clear(); this.spawnableCreatureList.clear();
this.spawnableWaterCreatureList.clear(); this.spawnableWaterCreatureList.clear();
this.spawnableMonsterList.clear(); this.spawnableMonsterList.clear();
this.spawnableCaveCreatureList.clear(); this.spawnableCaveCreatureList.clear();
this.customBiomeDecorator.generatePumpkins = false; this.customBiomeDecorator.generatePumpkins = false;
//this.customBiomeDecorator.generateLakes = false; //this.customBiomeDecorator.generateLakes = false;
this.theWorldGenerator = new WorldGenMinable(Block.waterMoving.blockID, 8); this.theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8);
} }
/** /**
@ -72,7 +72,7 @@ public class BiomeGenPromisedLandForest extends BiomeGenBase
int var7; int var7;
int var8; int var8;
for (var5 = 0; var5 < 5; ++var5) for (var5 = 0; var5 < 10; ++var5)
{ {
var6 = par3 + par2Random.nextInt(16); var6 = par3 + par2Random.nextInt(16);
var7 = par2Random.nextInt(60); var7 = par2Random.nextInt(60);

View file

@ -6,37 +6,45 @@ import java.util.Random;
import biomesoplenty.api.Blocks; import biomesoplenty.api.Blocks;
import biomesoplenty.configuration.BOPBlocks; import biomesoplenty.configuration.BOPBlocks;
import biomesoplenty.configuration.BOPConfiguration; import biomesoplenty.configuration.BOPConfiguration;
import biomesoplenty.worldgen.WorldGenBOPBigMushroom;
import biomesoplenty.worldgen.WorldGenPromisedBush;
import biomesoplenty.worldgen.WorldGenPromisedShrub; import biomesoplenty.worldgen.WorldGenPromisedShrub;
import biomesoplenty.worldgen.WorldGenPromisedTree; import biomesoplenty.worldgen.WorldGenPromisedTree;
import biomesoplenty.worldgen.WorldGenPromisedTree2; import biomesoplenty.worldgen.WorldGenPromisedTree2;
import biomesoplenty.worldgen.WorldGenPromisedTree3; import biomesoplenty.worldgen.WorldGenPromisedTree3;
import biomesoplenty.worldgen.WorldGenWaterSpring;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase; import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.gen.feature.WorldGenBigMushroom;
import net.minecraft.world.gen.feature.WorldGenMinable; import net.minecraft.world.gen.feature.WorldGenMinable;
import net.minecraft.world.gen.feature.WorldGenerator; import net.minecraft.world.gen.feature.WorldGenerator;
public class BiomeGenPromisedLandCrystals extends BiomeGenBase public class BiomeGenPromisedLandMushroom extends BiomeGenBase
{ {
private WorldGenerator theWorldGenerator; private WorldGenerator theWorldGenerator;
private BiomeDecoratorBOP customBiomeDecorator; private BiomeDecoratorBOP customBiomeDecorator;
public BiomeGenPromisedLandCrystals(int par1) public BiomeGenPromisedLandMushroom(int par1)
{ {
super(par1); super(par1);
this.theBiomeDecorator = new BiomeDecoratorBOP(this); this.theBiomeDecorator = new BiomeDecoratorBOP(this);
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator; this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
this.topBlock = (byte)Blocks.holyGrass.get().blockID; this.topBlock = (byte)Blocks.holyGrass.get().blockID;
this.fillerBlock = (byte)Blocks.holyStone.get().blockID; this.fillerBlock = (byte)Blocks.holyDirt.get().blockID;
this.customBiomeDecorator.treesPerChunk = -999; this.customBiomeDecorator.treesPerChunk = 15;
this.customBiomeDecorator.grassPerChunk = -999; this.customBiomeDecorator.grassPerChunk = -999;
this.customBiomeDecorator.holyTallGrassPerChunk = 2; this.customBiomeDecorator.holyTallGrassPerChunk = 50;
this.customBiomeDecorator.promisedWillowPerChunk = -999; this.customBiomeDecorator.promisedWillowPerChunk = 80;
this.customBiomeDecorator.pinkFlowersPerChunk = 6; this.customBiomeDecorator.pinkFlowersPerChunk = 6;
this.customBiomeDecorator.glowFlowersPerChunk = 10; this.customBiomeDecorator.blueMilksPerChunk = 15;
this.customBiomeDecorator.blueMilksPerChunk = 5; this.customBiomeDecorator.toadstoolsPerChunk = 15;
this.customBiomeDecorator.portobellosPerChunk = 15;
this.customBiomeDecorator.mushroomsPerChunk = 30;
//this.customBiomeDecorator.bigMushroomsPerChunk = 10;
this.customBiomeDecorator.generateLakes = false; this.customBiomeDecorator.generateLakes = false;
//this.customBiomeDecorator.generateMycelium = true;
this.customBiomeDecorator.pondsPerChunk = -100; this.customBiomeDecorator.pondsPerChunk = -100;
this.customBiomeDecorator.waterLakesPerChunk = 5; this.customBiomeDecorator.waterLakesPerChunk = 5;
this.spawnableCreatureList.clear(); this.spawnableCreatureList.clear();
@ -45,7 +53,15 @@ public class BiomeGenPromisedLandCrystals extends BiomeGenBase
this.spawnableCaveCreatureList.clear(); this.spawnableCaveCreatureList.clear();
this.customBiomeDecorator.generatePumpkins = false; this.customBiomeDecorator.generatePumpkins = false;
//this.customBiomeDecorator.generateLakes = false; //this.customBiomeDecorator.generateLakes = false;
this.theWorldGenerator = new WorldGenMinable(Block.waterMoving.blockID, 8); this.theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8);
}
/**
* Gets a WorldGen appropriate for this biome.
*/
public WorldGenerator getRandomWorldGenForTrees(Random par1Random)
{
return (WorldGenerator)(par1Random.nextInt(2) == 0 ? new WorldGenBOPBigMushroom() : new WorldGenPromisedTree2(false));
} }
/** /**
@ -64,7 +80,7 @@ public class BiomeGenPromisedLandCrystals extends BiomeGenBase
int var7; int var7;
int var8; int var8;
for (var5 = 0; var5 < 5; ++var5) for (var5 = 0; var5 < 10; ++var5)
{ {
var6 = par3 + par2Random.nextInt(16); var6 = par3 + par2Random.nextInt(16);
var7 = par2Random.nextInt(60); var7 = par2Random.nextInt(60);

View file

@ -6,10 +6,12 @@ import java.util.Random;
import biomesoplenty.api.Blocks; import biomesoplenty.api.Blocks;
import biomesoplenty.configuration.BOPBlocks; import biomesoplenty.configuration.BOPBlocks;
import biomesoplenty.configuration.BOPConfiguration; import biomesoplenty.configuration.BOPConfiguration;
import biomesoplenty.worldgen.WorldGenPromisedBush;
import biomesoplenty.worldgen.WorldGenPromisedShrub; import biomesoplenty.worldgen.WorldGenPromisedShrub;
import biomesoplenty.worldgen.WorldGenPromisedTree; import biomesoplenty.worldgen.WorldGenPromisedTree;
import biomesoplenty.worldgen.WorldGenPromisedTree2; import biomesoplenty.worldgen.WorldGenPromisedTree2;
import biomesoplenty.worldgen.WorldGenPromisedTree3; import biomesoplenty.worldgen.WorldGenPromisedTree3;
import biomesoplenty.worldgen.WorldGenWaterSpring;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.world.World; import net.minecraft.world.World;
@ -28,21 +30,30 @@ public class BiomeGenPromisedLandPlains extends BiomeGenBase
this.theBiomeDecorator = new BiomeDecoratorBOP(this); this.theBiomeDecorator = new BiomeDecoratorBOP(this);
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator; this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
this.topBlock = (byte)Blocks.holyGrass.get().blockID; this.topBlock = (byte)Blocks.holyGrass.get().blockID;
this.fillerBlock = (byte)Blocks.holyStone.get().blockID; this.fillerBlock = (byte)Blocks.holyDirt.get().blockID;
this.customBiomeDecorator.treesPerChunk = -999; this.customBiomeDecorator.treesPerChunk = 4;
this.customBiomeDecorator.grassPerChunk = -999; this.customBiomeDecorator.grassPerChunk = -999;
this.customBiomeDecorator.holyTallGrassPerChunk = 999; this.customBiomeDecorator.holyTallGrassPerChunk = 999;
this.customBiomeDecorator.promisedWillowPerChunk = 20; this.customBiomeDecorator.promisedWillowPerChunk = 80;
this.customBiomeDecorator.blueMilksPerChunk = 1; this.customBiomeDecorator.blueMilksPerChunk = 1;
this.customBiomeDecorator.generateLakes = false; this.customBiomeDecorator.generateLakes = false;
this.customBiomeDecorator.pondsPerChunk = -100; this.customBiomeDecorator.pondsPerChunk = -100;
this.customBiomeDecorator.waterLakesPerChunk = 4;
this.spawnableCreatureList.clear(); this.spawnableCreatureList.clear();
this.spawnableWaterCreatureList.clear(); this.spawnableWaterCreatureList.clear();
this.spawnableMonsterList.clear(); this.spawnableMonsterList.clear();
this.spawnableCaveCreatureList.clear(); this.spawnableCaveCreatureList.clear();
this.customBiomeDecorator.generatePumpkins = false; this.customBiomeDecorator.generatePumpkins = false;
//this.customBiomeDecorator.generateLakes = false; //this.customBiomeDecorator.generateLakes = false;
this.theWorldGenerator = new WorldGenMinable(Block.waterMoving.blockID, 8); this.theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8);
}
/**
* Gets a WorldGen appropriate for this biome.
*/
public WorldGenerator getRandomWorldGenForTrees(Random par1Random)
{
return new WorldGenPromisedBush();
} }
/** /**
@ -61,7 +72,7 @@ public class BiomeGenPromisedLandPlains extends BiomeGenBase
int var7; int var7;
int var8; int var8;
for (var5 = 0; var5 < 5; ++var5) for (var5 = 0; var5 < 10; ++var5)
{ {
var6 = par3 + par2Random.nextInt(16); var6 = par3 + par2Random.nextInt(16);
var7 = par2Random.nextInt(60); var7 = par2Random.nextInt(60);

View file

@ -8,11 +8,11 @@ import biomesoplenty.configuration.BOPBlocks;
import biomesoplenty.configuration.BOPConfiguration; import biomesoplenty.configuration.BOPConfiguration;
import biomesoplenty.worldgen.WorldGenPromisedShrub; import biomesoplenty.worldgen.WorldGenPromisedShrub;
import biomesoplenty.worldgen.WorldGenPromisedWillowTree; import biomesoplenty.worldgen.WorldGenPromisedWillowTree;
import biomesoplenty.worldgen.WorldGenWaterSpring;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase; import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.gen.feature.WorldGenMinable;
import net.minecraft.world.gen.feature.WorldGenerator; import net.minecraft.world.gen.feature.WorldGenerator;
public class BiomeGenPromisedLandSwamp extends BiomeGenBase public class BiomeGenPromisedLandSwamp extends BiomeGenBase
@ -26,24 +26,23 @@ public class BiomeGenPromisedLandSwamp extends BiomeGenBase
this.theBiomeDecorator = new BiomeDecoratorBOP(this); this.theBiomeDecorator = new BiomeDecoratorBOP(this);
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator; this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
this.topBlock = (byte)Blocks.holyGrass.get().blockID; this.topBlock = (byte)Blocks.holyGrass.get().blockID;
this.fillerBlock = (byte)Blocks.holyStone.get().blockID; this.fillerBlock = (byte)Blocks.holyDirt.get().blockID;
this.customBiomeDecorator.treesPerChunk = 4; this.customBiomeDecorator.treesPerChunk = 24;
this.customBiomeDecorator.grassPerChunk = -999; this.customBiomeDecorator.grassPerChunk = -999;
this.customBiomeDecorator.holyTallGrassPerChunk = 25; this.customBiomeDecorator.holyTallGrassPerChunk = 50;
this.customBiomeDecorator.promisedWillowPerChunk = 80; this.customBiomeDecorator.promisedWillowPerChunk = 80;
this.customBiomeDecorator.pinkFlowersPerChunk = 6; this.customBiomeDecorator.pinkFlowersPerChunk = 6;
this.customBiomeDecorator.glowFlowersPerChunk = 3;
this.customBiomeDecorator.blueMilksPerChunk = 15; this.customBiomeDecorator.blueMilksPerChunk = 15;
this.customBiomeDecorator.generateLakes = false; this.customBiomeDecorator.generateLakes = false;
this.customBiomeDecorator.pondsPerChunk = -100; this.customBiomeDecorator.pondsPerChunk = -100;
this.customBiomeDecorator.waterLakesPerChunk = 10; this.customBiomeDecorator.waterLakesPerChunk = 17;
this.spawnableCreatureList.clear(); this.spawnableCreatureList.clear();
this.spawnableWaterCreatureList.clear(); this.spawnableWaterCreatureList.clear();
this.spawnableMonsterList.clear(); this.spawnableMonsterList.clear();
this.spawnableCaveCreatureList.clear(); this.spawnableCaveCreatureList.clear();
this.customBiomeDecorator.generatePumpkins = false; this.customBiomeDecorator.generatePumpkins = false;
//this.customBiomeDecorator.generateLakes = false; //this.customBiomeDecorator.generateLakes = false;
this.theWorldGenerator = new WorldGenMinable(Block.waterMoving.blockID, 8); this.theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8);
} }
/** /**

View file

@ -132,13 +132,13 @@ public class BlockBOPFlower extends BlockFlower
protected boolean canThisPlantGrowOnThisBlockID(int id, int metadata) protected boolean canThisPlantGrowOnThisBlockID(int id, int metadata)
{ {
if (metadata == 10) //Toadstool if (metadata == 10) //Toadstool
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID; return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID || id == Blocks.holyGrass.get().blockID;
if (metadata == 11) //Cactus if (metadata == 11) //Cactus
return id == Block.sand.blockID; return id == Block.sand.blockID || id == Blocks.redRock.get().blockID || id == Blocks.holySand.get().blockID;
if (metadata == 12) //Yucca if (metadata == 12) //Yucca
return id == Blocks.hardDirt.get().blockID || id == Blocks.redRock.get().blockID || id == Block.sand.blockID; return id == Blocks.hardDirt.get().blockID || id == Blocks.redRock.get().blockID || id == Block.sand.blockID || id == Blocks.holySand.get().blockID;
if (metadata == 13) //Portobello if (metadata == 13) //Portobello
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID; return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID | id == Blocks.holyGrass.get().blockID;
if (metadata == 14) //Blue Milk Cap if (metadata == 14) //Blue Milk Cap
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID || id == Blocks.holyGrass.get().blockID; return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID || id == Blocks.holyGrass.get().blockID;
else else
@ -156,16 +156,16 @@ public class BlockBOPFlower extends BlockFlower
switch (meta) switch (meta)
{ {
case 10: // Toadstool case 10: // Toadstool
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID; return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID || id == Blocks.holyGrass.get().blockID;
case 11: // Cactus case 11: // Cactus
return id == Blocks.redRock.get().blockID || id == Block.sand.blockID; return id == Blocks.redRock.get().blockID || id == Block.sand.blockID || id == Blocks.holySand.get().blockID;
case 12: // Yucca case 12: // Yucca
return id == Blocks.hardDirt.get().blockID || id == Blocks.redRock.get().blockID || id == Block.sand.blockID; return id == Blocks.hardDirt.get().blockID || id == Blocks.redRock.get().blockID || id == Block.sand.blockID || id == Blocks.holySand.get().blockID;
case 13: // Portobello case 13: // Portobello
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID; return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID || id == Blocks.holyGrass.get().blockID;
case 14: // Blue Milk Cap case 14: // Blue Milk Cap
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID || id == Blocks.holyGrass.get().blockID; return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID || id == Blocks.holyGrass.get().blockID;

View file

@ -10,7 +10,7 @@ public class BlockBOPGeneric extends Block
{ {
public enum BlockType public enum BlockType
{ {
ASH_STONE, HARD_SAND, HARD_DIRT, HARD_ICE, HOLY_STONE, BAMBOO_THATCHING, DRIED_DIRT, CRAG_ROCK, MUD_BRICK; ASH_STONE, HARD_SAND, HARD_DIRT, HARD_ICE, HOLY_STONE, BAMBOO_THATCHING, DRIED_DIRT, CRAG_ROCK, MUD_BRICK, HOLY_DIRT, HOLY_SAND;
} }
private Icon texture; private Icon texture;
@ -58,6 +58,14 @@ public class BlockBOPGeneric extends Block
case MUD_BRICK: case MUD_BRICK:
setHardness(1.0F).setResistance(2.0F).setStepSound(Block.soundStoneFootstep).setUnlocalizedName("mudBrick"); setHardness(1.0F).setResistance(2.0F).setStepSound(Block.soundStoneFootstep).setUnlocalizedName("mudBrick");
break;
case HOLY_DIRT:
setHardness(0.6F).setStepSound(Block.soundGravelFootstep).setUnlocalizedName("holyDirt");
break;
case HOLY_SAND:
setHardness(0.3F).setStepSound(Block.soundSandFootstep).setUnlocalizedName("holySand");
break; break;
default: default:
@ -104,6 +112,14 @@ public class BlockBOPGeneric extends Block
case MUD_BRICK: case MUD_BRICK:
texture = iconRegister.registerIcon("BiomesOPlenty:mudbrick"); texture = iconRegister.registerIcon("BiomesOPlenty:mudbrick");
break;
case HOLY_DIRT:
texture = iconRegister.registerIcon("BiomesOPlenty:holydirt");
break;
case HOLY_SAND:
texture = iconRegister.registerIcon("BiomesOPlenty:holysand");
break; break;
default: default:

View file

@ -30,13 +30,13 @@ public class BlockBOPGrass extends Block
this.setCreativeTab(BiomesOPlenty.tabBiomesOPlenty); this.setCreativeTab(BiomesOPlenty.tabBiomesOPlenty);
setStepSound(Block.soundGrassFootstep); setStepSound(Block.soundGrassFootstep);
setHardness(0.6F); setHardness(0.6F);
setLightValue(0.25F); //setLightValue(0.25F);
} }
@Override @Override
public void registerIcons(IconRegister iconRegister) public void registerIcons(IconRegister iconRegister)
{ {
this.blockIcon[0][0] = iconRegister.registerIcon("BiomesOPlenty:holystone"); this.blockIcon[0][0] = iconRegister.registerIcon("BiomesOPlenty:holydirt");
this.blockIcon[0][1] = iconRegister.registerIcon("BiomesOPlenty:holygrass_top"); this.blockIcon[0][1] = iconRegister.registerIcon("BiomesOPlenty:holygrass_top");
this.blockIcon[0][2] = iconRegister.registerIcon("BiomesOPlenty:holygrass_side"); this.blockIcon[0][2] = iconRegister.registerIcon("BiomesOPlenty:holygrass_side");
this.blockIcon[0][3] = iconRegister.registerIcon("BiomesOPlenty:holygrass_side"); this.blockIcon[0][3] = iconRegister.registerIcon("BiomesOPlenty:holygrass_side");
@ -136,7 +136,7 @@ public class BlockBOPGrass extends Block
{ {
if (world.getBlockLightValue(x, y + 1, z) < 4 && Block.lightOpacity[world.getBlockId(x, y + 1, z)] > 2) if (world.getBlockLightValue(x, y + 1, z) < 4 && Block.lightOpacity[world.getBlockId(x, y + 1, z)] > 2)
{ {
world.setBlock(x, y, z, Blocks.holyStone.get().blockID); world.setBlock(x, y, z, Blocks.holyDirt.get().blockID);
} }
else if (world.getBlockLightValue(x, y + 1, z) >= 9) else if (world.getBlockLightValue(x, y + 1, z) >= 9)
{ {
@ -147,7 +147,7 @@ public class BlockBOPGrass extends Block
int var9 = z + random.nextInt(3) - 1; int var9 = z + random.nextInt(3) - 1;
int var10 = world.getBlockId(var7, var8 + 1, var9); int var10 = world.getBlockId(var7, var8 + 1, var9);
if (world.getBlockId(var7, var8, var9) == Blocks.holyStone.get().blockID && world.getBlockLightValue(var7, var8 + 1, var9) >= 4 && Block.lightOpacity[var10] <= 2) if (world.getBlockId(var7, var8, var9) == Blocks.holyDirt.get().blockID && world.getBlockLightValue(var7, var8 + 1, var9) >= 4 && Block.lightOpacity[var10] <= 2)
{ {
world.setBlock(var7, var8, var9, Blocks.holyGrass.get().blockID, 0, 2); world.setBlock(var7, var8, var9, Blocks.holyGrass.get().blockID, 0, 2);
} }
@ -179,7 +179,7 @@ public class BlockBOPGrass extends Block
@Override @Override
public int idDropped(int meta, Random par2Random, int par3) public int idDropped(int meta, Random par2Random, int par3)
{ {
return meta == 0 ? Blocks.holyStone.get().blockID : Block.dirt.blockID; return meta == 0 ? Blocks.holyDirt.get().blockID : Block.dirt.blockID;
} }
} }

View file

@ -116,7 +116,7 @@ public class BOPBiomes {
Biomes.promisedLandPlains = Optional.of((new BiomeGenPromisedLandPlains(BOPConfiguration.promisedLandPlainsID)).setColor(112).setBiomeName("Purified Plains").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F)); Biomes.promisedLandPlains = Optional.of((new BiomeGenPromisedLandPlains(BOPConfiguration.promisedLandPlainsID)).setColor(112).setBiomeName("Purified Plains").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F));
Biomes.promisedLandDesert = Optional.of((new BiomeGenPromisedLandDesert(BOPConfiguration.promisedLandDesertID)).setColor(112).setBiomeName("Divine Desert").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F)); Biomes.promisedLandDesert = Optional.of((new BiomeGenPromisedLandDesert(BOPConfiguration.promisedLandDesertID)).setColor(112).setBiomeName("Divine Desert").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F));
Biomes.promisedLandSwamp = Optional.of((new BiomeGenPromisedLandSwamp(BOPConfiguration.promisedLandSwampID)).setColor(112).setBiomeName("Blessed Bog").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F)); Biomes.promisedLandSwamp = Optional.of((new BiomeGenPromisedLandSwamp(BOPConfiguration.promisedLandSwampID)).setColor(112).setBiomeName("Blessed Bog").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F));
Biomes.promisedLandCrystals = Optional.of((new BiomeGenPromisedLandCrystals(BOPConfiguration.promisedLandCrystalsID)).setColor(112).setBiomeName("Celestial Crystals").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F)); Biomes.promisedLandMushroom = Optional.of((new BiomeGenPromisedLandMushroom(BOPConfiguration.promisedLandMushroomID)).setColor(112).setBiomeName("Majestic Mushrooms").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 2.0F));
Biomes.quagmire = Optional.of((new BiomeGenQuagmire(BOPConfiguration.quagmireID)).setColor(522674).setBiomeName("Quagmire").func_76733_a(9154376).setMinMaxHeight(-0.1F, 0.3F).setTemperatureRainfall(0.8F, 0.9F)); Biomes.quagmire = Optional.of((new BiomeGenQuagmire(BOPConfiguration.quagmireID)).setColor(522674).setBiomeName("Quagmire").func_76733_a(9154376).setMinMaxHeight(-0.1F, 0.3F).setTemperatureRainfall(0.8F, 0.9F));
Biomes.rainforest = Optional.of((new BiomeGenRainforest(BOPConfiguration.rainforestID)).setColor(5470985).setBiomeName("Rainforest").func_76733_a(5470985).setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.7F, 1.8F)); Biomes.rainforest = Optional.of((new BiomeGenRainforest(BOPConfiguration.rainforestID)).setColor(5470985).setBiomeName("Rainforest").func_76733_a(5470985).setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.7F, 1.8F));
Biomes.redwoodForest = Optional.of((new BiomeGenRedwoodForest(BOPConfiguration.redwoodForestID)).setColor(747097).setBiomeName("Redwood Forest").func_76733_a(5159473).setTemperatureRainfall(0.8F, 0.4F).setMinMaxHeight(0.0F, 0.4F)); Biomes.redwoodForest = Optional.of((new BiomeGenRedwoodForest(BOPConfiguration.redwoodForestID)).setColor(747097).setBiomeName("Redwood Forest").func_76733_a(5159473).setTemperatureRainfall(0.8F, 0.4F).setMinMaxHeight(0.0F, 0.4F));
@ -203,7 +203,7 @@ public class BOPBiomes {
BiomeDictionary.registerBiomeType(Biomes.promisedLandPlains.get(), Type.PLAINS, Type.MAGICAL); BiomeDictionary.registerBiomeType(Biomes.promisedLandPlains.get(), Type.PLAINS, Type.MAGICAL);
BiomeDictionary.registerBiomeType(Biomes.promisedLandDesert.get(), Type.DESERT, Type.MAGICAL); BiomeDictionary.registerBiomeType(Biomes.promisedLandDesert.get(), Type.DESERT, Type.MAGICAL);
BiomeDictionary.registerBiomeType(Biomes.promisedLandSwamp.get(), Type.SWAMP, Type.MAGICAL); BiomeDictionary.registerBiomeType(Biomes.promisedLandSwamp.get(), Type.SWAMP, Type.MAGICAL);
BiomeDictionary.registerBiomeType(Biomes.promisedLandCrystals.get(), Type.MAGICAL); BiomeDictionary.registerBiomeType(Biomes.promisedLandMushroom.get(), Type.MUSHROOM, Type.MAGICAL);
BiomeDictionary.registerBiomeType(Biomes.quagmire.get(), Type.WASTELAND); BiomeDictionary.registerBiomeType(Biomes.quagmire.get(), Type.WASTELAND);
BiomeDictionary.registerBiomeType(Biomes.rainforest.get(), Type.JUNGLE, Type.HILLS, Type.FOREST); BiomeDictionary.registerBiomeType(Biomes.rainforest.get(), Type.JUNGLE, Type.HILLS, Type.FOREST);
BiomeDictionary.registerBiomeType(Biomes.redwoodForest.get(), Type.FOREST); BiomeDictionary.registerBiomeType(Biomes.redwoodForest.get(), Type.FOREST);

View file

@ -123,7 +123,9 @@ public class BOPBlocks {
Blocks.hardSand = Optional.of(new BlockBOPGeneric(BOPConfiguration.hardSandID, Material.sand, BlockType.HARD_SAND)); Blocks.hardSand = Optional.of(new BlockBOPGeneric(BOPConfiguration.hardSandID, Material.sand, BlockType.HARD_SAND));
Blocks.hardDirt = Optional.of(new BlockBOPGeneric(BOPConfiguration.hardDirtID, Material.rock, BlockType.HARD_DIRT)); Blocks.hardDirt = Optional.of(new BlockBOPGeneric(BOPConfiguration.hardDirtID, Material.rock, BlockType.HARD_DIRT));
Blocks.holyGrass = Optional.of(new BlockBOPGrass(BOPConfiguration.holyGrassID).setUnlocalizedName("holyGrass")); Blocks.holyGrass = Optional.of(new BlockBOPGrass(BOPConfiguration.holyGrassID).setUnlocalizedName("holyGrass"));
Blocks.holyStone = Optional.of(new BlockBOPGeneric(BOPConfiguration.holyStoneID, Material.rock, BlockType.HOLY_STONE).setLightValue(0.25F)); Blocks.holyDirt = Optional.of(new BlockBOPGeneric(BOPConfiguration.holyDirtID, Material.sand, BlockType.HOLY_DIRT));
Blocks.holySand = Optional.of(new BlockBOPGeneric(BOPConfiguration.holySandID, Material.sand, BlockType.HOLY_SAND));
Blocks.holyStone = Optional.of(new BlockBOPGeneric(BOPConfiguration.holyStoneID, Material.rock, BlockType.HOLY_STONE));
Blocks.promisedPortal = Optional.of(new BlockPromisedPortal(BOPConfiguration.promisedLandPortalID).setUnlocalizedName("promisedPortal").setBlockUnbreakable().setResistance(6000000.0F).setLightValue(1.0F)); Blocks.promisedPortal = Optional.of(new BlockPromisedPortal(BOPConfiguration.promisedLandPortalID).setUnlocalizedName("promisedPortal").setBlockUnbreakable().setResistance(6000000.0F).setLightValue(1.0F));
// Blocks.amethystOre = Optional.of(new BlockBOPGeneric(BOPConfiguration.amethystOreID, Material.rock, BlockType.AMETHYST_ORE)); // Blocks.amethystOre = Optional.of(new BlockBOPGeneric(BOPConfiguration.amethystOreID, Material.rock, BlockType.AMETHYST_ORE));
// Blocks.amethystBlock = Optional.of(new BlockBOPGeneric(BOPConfiguration.amethystBlockID, Material.iron, BlockType.AMETHYST_BLOCK)); // Blocks.amethystBlock = Optional.of(new BlockBOPGeneric(BOPConfiguration.amethystBlockID, Material.iron, BlockType.AMETHYST_BLOCK));
@ -188,6 +190,8 @@ public class BOPBlocks {
GameRegistry.registerBlock(Blocks.hardDirt.get(), "hardDirt"); GameRegistry.registerBlock(Blocks.hardDirt.get(), "hardDirt");
// GameRegistry.registerBlock(Blocks.holyGrass.get(), "holyGrass"); // GameRegistry.registerBlock(Blocks.holyGrass.get(), "holyGrass");
GameRegistry.registerBlock(Blocks.holyGrass.get(), ItemBOPGrass.class, "holyGrass"); GameRegistry.registerBlock(Blocks.holyGrass.get(), ItemBOPGrass.class, "holyGrass");
GameRegistry.registerBlock(Blocks.holyDirt.get(), "holyDirt");
GameRegistry.registerBlock(Blocks.holySand.get(), "holySand");
GameRegistry.registerBlock(Blocks.holyStone.get(), "holyStone"); GameRegistry.registerBlock(Blocks.holyStone.get(), "holyStone");
GameRegistry.registerBlock(Blocks.promisedPortal.get(), "promisedPortal"); GameRegistry.registerBlock(Blocks.promisedPortal.get(), "promisedPortal");
GameRegistry.registerBlock(Blocks.amethystOre.get(), ItemBOPAmethyst.class, "amethystOre"); GameRegistry.registerBlock(Blocks.amethystOre.get(), ItemBOPAmethyst.class, "amethystOre");
@ -314,6 +318,8 @@ public class BOPBlocks {
// LanguageRegistry.addName(Blocks.holyGrass.get(), "Holy Grass"); // LanguageRegistry.addName(Blocks.holyGrass.get(), "Holy Grass");
LanguageRegistry.addName(new ItemStack(Blocks.holyGrass.get(), 1, 0), "Holy Grass"); LanguageRegistry.addName(new ItemStack(Blocks.holyGrass.get(), 1, 0), "Holy Grass");
LanguageRegistry.addName(new ItemStack(Blocks.holyGrass.get(), 1, 1), "Smoldering Grass"); LanguageRegistry.addName(new ItemStack(Blocks.holyGrass.get(), 1, 1), "Smoldering Grass");
LanguageRegistry.addName(Blocks.holyDirt.get(), "Holy Dirt");
LanguageRegistry.addName(Blocks.holySand.get(), "Holy Sand");
LanguageRegistry.addName(Blocks.holyStone.get(), "Holy Stone"); LanguageRegistry.addName(Blocks.holyStone.get(), "Holy Stone");
LanguageRegistry.addName(new ItemStack(Blocks.plants.get(),1,4), "Holy Tall Grass"); LanguageRegistry.addName(new ItemStack(Blocks.plants.get(),1,4), "Holy Tall Grass");
LanguageRegistry.addName(Blocks.promisedPortal.get(), "Promised Land Portal"); LanguageRegistry.addName(Blocks.promisedPortal.get(), "Promised Land Portal");

View file

@ -114,7 +114,9 @@ public class BOPConfiguration {
public static int hardSandID; public static int hardSandID;
public static int hardDirtID; public static int hardDirtID;
public static int holyGrassID; public static int holyGrassID;
public static int holyDirtID;
public static int holyStoneID; public static int holyStoneID;
public static int holySandID;
public static int cragRockID; public static int cragRockID;
public static int plantsID; public static int plantsID;
@ -268,7 +270,7 @@ public class BOPConfiguration {
public static int promisedLandPlainsID; public static int promisedLandPlainsID;
public static int promisedLandDesertID; public static int promisedLandDesertID;
public static int promisedLandSwampID; public static int promisedLandSwampID;
public static int promisedLandCrystalsID; public static int promisedLandMushroomID;
public static int quagmireID; public static int quagmireID;
public static int rainforestID; public static int rainforestID;
public static int redwoodForestID; public static int redwoodForestID;
@ -589,8 +591,10 @@ public class BOPConfiguration {
hardSandID = config.getTerrainBlock("Terrain Block IDs", "Hard Sand ID", 167, null).getInt(); hardSandID = config.getTerrainBlock("Terrain Block IDs", "Hard Sand ID", 167, null).getInt();
hardDirtID = config.getTerrainBlock("Terrain Block IDs", "Hard Dirt ID", 168, null).getInt(); hardDirtID = config.getTerrainBlock("Terrain Block IDs", "Hard Dirt ID", 168, null).getInt();
holyGrassID = config.getTerrainBlock("Terrain Block IDs", "Holy Grass ID", 169, null).getInt(); holyGrassID = config.getTerrainBlock("Terrain Block IDs", "Holy Grass ID", 169, null).getInt();
holyStoneID = config.getTerrainBlock("Terrain Block IDs", "Holy Stone ID", 170, null).getInt(); holyDirtID = config.getTerrainBlock("Terrain Block IDs", "Holy Dirt ID", 170, null).getInt();
cragRockID = config.getTerrainBlock("Terrain Block IDs", "Crag Rock ID", 171, null).getInt(); holyStoneID = config.getTerrainBlock("Terrain Block IDs", "Holy Stone ID", 171, null).getInt();
holySandID = config.getTerrainBlock("Terrain Block IDs", "Holy Sand ID", 172, null).getInt();
cragRockID = config.getTerrainBlock("Terrain Block IDs", "Crag Rock ID", 173, null).getInt();
// Get Crafted Block ID's // Get Crafted Block ID's
plantsID = config.getBlock("Plant ID", 1920, null).getInt(); plantsID = config.getBlock("Plant ID", 1920, null).getInt();
@ -688,11 +692,11 @@ public class BOPConfiguration {
//23-79 ExtraBiomesXL //23-79 ExtraBiomesXL
promisedLandForestID = config.get("Biome IDs", "Promised Land Forest ID", 75).getInt(); promisedLandForestID = config.get("Biome IDs", "Wonderous Woods (Promised Land) ID", 75).getInt();
promisedLandPlainsID = config.get("Biome IDs", "Promised Land Plains ID", 76).getInt(); promisedLandPlainsID = config.get("Biome IDs", "Purified Plains (Promised Land) ID", 76).getInt();
promisedLandDesertID = config.get("Biome IDs", "Promised Land Desert ID", 77).getInt(); promisedLandDesertID = config.get("Biome IDs", "Divine Desert (Promised Land) ID", 77).getInt();
promisedLandSwampID = config.get("Biome IDs", "Promised Land Swamp ID", 78).getInt(); promisedLandSwampID = config.get("Biome IDs", "Blessed Bog (Promised Land) ID", 78).getInt();
promisedLandCrystalsID = config.get("Biome IDs", "Promised Land Crystals ID", 79).getInt(); promisedLandMushroomID = config.get("Biome IDs", "Majestic Mushrooms (Promised Land) ID", 79).getInt();
//80-169 Better World Generation 4 //80-169 Better World Generation 4

View file

@ -58,7 +58,7 @@ public class ForestryIntegration
EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandPlainsID); EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandPlainsID);
EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandDesertID); EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandDesertID);
EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandSwampID); EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandSwampID);
EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandCrystalsID); EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandMushroomID);
EnumTemperature.hotBiomeIds.add(BOPConfiguration.rainforestID); EnumTemperature.hotBiomeIds.add(BOPConfiguration.rainforestID);
EnumTemperature.hotBiomeIds.add(BOPConfiguration.tropicsID); EnumTemperature.hotBiomeIds.add(BOPConfiguration.tropicsID);
@ -67,7 +67,7 @@ public class ForestryIntegration
EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandPlainsID); EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandPlainsID);
EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandDesertID); EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandDesertID);
EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandSwampID); EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandSwampID);
EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandCrystalsID); EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandMushroomID);
EnumHumidity.dampBiomeIds.add(BOPConfiguration.rainforestID); EnumHumidity.dampBiomeIds.add(BOPConfiguration.rainforestID);
EnumHumidity.dampBiomeIds.add(BOPConfiguration.tropicsID); EnumHumidity.dampBiomeIds.add(BOPConfiguration.tropicsID);
@ -279,6 +279,7 @@ public class ForestryIntegration
{ {
// Miner's Backpack // Miner's Backpack
BackpackManager.backpackItems[MINER].add(new ItemStack(Blocks.amethystOre.get(), 1, 0)); BackpackManager.backpackItems[MINER].add(new ItemStack(Blocks.amethystOre.get(), 1, 0));
BackpackManager.backpackItems[MINER].add(new ItemStack(Blocks.holyDirt.get(), 1, 0));
BackpackManager.backpackItems[MINER].add(new ItemStack(Blocks.holyStone.get(), 1, 0)); BackpackManager.backpackItems[MINER].add(new ItemStack(Blocks.holyStone.get(), 1, 0));
BackpackManager.backpackItems[MINER].add(new ItemStack(Blocks.redRock.get(), 1, OreDictionary.WILDCARD_VALUE)); BackpackManager.backpackItems[MINER].add(new ItemStack(Blocks.redRock.get(), 1, OreDictionary.WILDCARD_VALUE));
BackpackManager.backpackItems[MINER].add(new ItemStack(Blocks.driedDirt.get(), 1, 0)); BackpackManager.backpackItems[MINER].add(new ItemStack(Blocks.driedDirt.get(), 1, 0));

View file

@ -106,6 +106,7 @@ public class ThaumcraftIntegration {
ThaumcraftApi.registerObjectTag(getBID("hardSand"), getBMeta("hardSand"), (new ObjectTags()).add(EnumTag.ROCK, 1).add(EnumTag.EARTH, 2)); ThaumcraftApi.registerObjectTag(getBID("hardSand"), getBMeta("hardSand"), (new ObjectTags()).add(EnumTag.ROCK, 1).add(EnumTag.EARTH, 2));
ThaumcraftApi.registerObjectTag(getBID("hardDirt"), getBMeta("hardDirt"), (new ObjectTags()).add(EnumTag.ROCK, 1).add(EnumTag.EARTH, 2)); ThaumcraftApi.registerObjectTag(getBID("hardDirt"), getBMeta("hardDirt"), (new ObjectTags()).add(EnumTag.ROCK, 1).add(EnumTag.EARTH, 2));
ThaumcraftApi.registerObjectTag(getBID("holyGrass"), getBMeta("holyGrass"), (new ObjectTags()).add(EnumTag.PLANT, 1).add(EnumTag.EARTH, 2).add(EnumTag.LIGHT, 1)); ThaumcraftApi.registerObjectTag(getBID("holyGrass"), getBMeta("holyGrass"), (new ObjectTags()).add(EnumTag.PLANT, 1).add(EnumTag.EARTH, 2).add(EnumTag.LIGHT, 1));
ThaumcraftApi.registerObjectTag(getBID("holyDirt"), getBMeta("holyDirt"), (new ObjectTags()).add(EnumTag.LIGHT, 1).add(EnumTag.EARTH, 2));
ThaumcraftApi.registerObjectTag(getBID("holyStone"), getBMeta("holyStone"), (new ObjectTags()).add(EnumTag.LIGHT, 1).add(EnumTag.ROCK, 2)); ThaumcraftApi.registerObjectTag(getBID("holyStone"), getBMeta("holyStone"), (new ObjectTags()).add(EnumTag.LIGHT, 1).add(EnumTag.ROCK, 2));
ThaumcraftApi.registerObjectTag(getBID("cragRock"), getBMeta("cragRock"), (new ObjectTags()).add(EnumTag.ROCK, 2)); ThaumcraftApi.registerObjectTag(getBID("cragRock"), getBMeta("cragRock"), (new ObjectTags()).add(EnumTag.ROCK, 2));
ThaumcraftApi.registerObjectTag(getBID("quicksand"), getBMeta("quicksand"), (new ObjectTags()).add(EnumTag.EARTH, 2).add(EnumTag.TRAP, 4)); ThaumcraftApi.registerObjectTag(getBID("quicksand"), getBMeta("quicksand"), (new ObjectTags()).add(EnumTag.EARTH, 2).add(EnumTag.TRAP, 4));

View file

@ -17,7 +17,7 @@ public abstract class BiomeLayer
BiomeLayer obj = new BiomeLayerCreate(1L); BiomeLayer obj = new BiomeLayerCreate(1L);
obj = new BiomeLayerFuzzyZoom(2000L, (BiomeLayer)(obj)); obj = new BiomeLayerFuzzyZoom(2000L, (BiomeLayer)(obj));
for(int i = 1; i < 4; i++) for(int i = 1; i < 1; i++)
{ {
obj = new BiomeLayerZoom(2000L + i, (BiomeLayer)(obj)); obj = new BiomeLayerZoom(2000L + i, (BiomeLayer)(obj));
} }
@ -26,7 +26,7 @@ public abstract class BiomeLayer
obj = new BiomeLayerBiomes(200L, ((BiomeLayer)(obj)), worldtype); obj = new BiomeLayerBiomes(200L, ((BiomeLayer)(obj)), worldtype);
obj = BiomeLayerZoom.func_75915_a(1000L, ((BiomeLayer)(obj)), 2); obj = BiomeLayerZoom.func_75915_a(1000L, ((BiomeLayer)(obj)), 2);
for(int j = 0; j < 4; j++) for(int j = 0; j < 1; j++)
{ {
obj = new BiomeLayerZoom(1000L + j, (BiomeLayer)(obj)); obj = new BiomeLayerZoom(1000L + j, (BiomeLayer)(obj));
} }

View file

@ -36,9 +36,9 @@ public class BiomeLayerBiomes extends BiomeLayer
AllowedBiomes.add(Biomes.promisedLandSwamp.get()); AllowedBiomes.add(Biomes.promisedLandSwamp.get());
} }
if (Biomes.promisedLandCrystals.isPresent()) if (Biomes.promisedLandMushroom.isPresent())
{ {
AllowedBiomes.add(Biomes.promisedLandCrystals.get()); AllowedBiomes.add(Biomes.promisedLandMushroom.get());
} }
} }

View file

@ -0,0 +1,224 @@
package biomesoplenty.worldgen;
import biomesoplenty.api.Blocks;
import biomesoplenty.configuration.BOPBlocks;
import biomesoplenty.configuration.BOPConfiguration;
import java.util.Random;
import net.minecraft.block.Block;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
public class WorldGenBOPBigMushroom extends WorldGenerator
{
/** The mushroom type. 0 for brown, 1 for red. */
private int mushroomType = 1;
public WorldGenBOPBigMushroom(int par1)
{
super(true);
this.mushroomType = par1;
}
public WorldGenBOPBigMushroom()
{
super(false);
}
public boolean generate(World par1World, Random par2Random, int par3, int par4, int par5)
{
int l = 1;
if (this.mushroomType >= 0)
{
l = this.mushroomType;
}
int i1 = par2Random.nextInt(3) + 4;
boolean flag = true;
if (par4 >= 1 && par4 + i1 + 1 < 256)
{
int j1;
int k1;
int l1;
int i2;
for (j1 = par4; j1 <= par4 + 1 + i1; ++j1)
{
byte b0 = 3;
if (j1 <= par4 + 3)
{
b0 = 0;
}
for (k1 = par3 - b0; k1 <= par3 + b0 && flag; ++k1)
{
for (l1 = par5 - b0; l1 <= par5 + b0 && flag; ++l1)
{
if (j1 >= 0 && j1 < 256)
{
i2 = par1World.getBlockId(k1, j1, l1);
Block block = Block.blocksList[i2];
if (i2 != 0 && block != null && !block.isLeaves(par1World, k1, j1, l1))
{
flag = false;
}
}
else
{
flag = false;
}
}
}
}
if (!flag)
{
return false;
}
else
{
j1 = par1World.getBlockId(par3, par4 - 1, par5);
if (j1 != Block.dirt.blockID && j1 != Block.grass.blockID && j1 != Block.mycelium.blockID && j1 != Blocks.holyGrass.get().blockID)
{
return false;
}
else
{
int j2 = par4 + i1;
if (l == 1)
{
j2 = par4 + i1 - 3;
}
for (k1 = j2; k1 <= par4 + i1; ++k1)
{
l1 = 1;
if (k1 < par4 + i1)
{
++l1;
}
if (l == 0)
{
l1 = 3;
}
for (i2 = par3 - l1; i2 <= par3 + l1; ++i2)
{
for (int k2 = par5 - l1; k2 <= par5 + l1; ++k2)
{
int l2 = 5;
if (i2 == par3 - l1)
{
--l2;
}
if (i2 == par3 + l1)
{
++l2;
}
if (k2 == par5 - l1)
{
l2 -= 3;
}
if (k2 == par5 + l1)
{
l2 += 3;
}
if (l == 0 || k1 < par4 + i1)
{
if ((i2 == par3 - l1 || i2 == par3 + l1) && (k2 == par5 - l1 || k2 == par5 + l1))
{
continue;
}
if (i2 == par3 - (l1 - 1) && k2 == par5 - l1)
{
l2 = 1;
}
if (i2 == par3 - l1 && k2 == par5 - (l1 - 1))
{
l2 = 1;
}
if (i2 == par3 + (l1 - 1) && k2 == par5 - l1)
{
l2 = 3;
}
if (i2 == par3 + l1 && k2 == par5 - (l1 - 1))
{
l2 = 3;
}
if (i2 == par3 - (l1 - 1) && k2 == par5 + l1)
{
l2 = 7;
}
if (i2 == par3 - l1 && k2 == par5 + (l1 - 1))
{
l2 = 7;
}
if (i2 == par3 + (l1 - 1) && k2 == par5 + l1)
{
l2 = 9;
}
if (i2 == par3 + l1 && k2 == par5 + (l1 - 1))
{
l2 = 9;
}
}
if (l2 == 5 && k1 < par4 + i1)
{
l2 = 0;
}
Block block = Block.blocksList[par1World.getBlockId(i2, k1, k2)];
if ((l2 != 0 || par4 >= par4 + i1 - 1) && (block == null || block.canBeReplacedByLeaves(par1World, i2, k1, k2)))
{
this.setBlockAndMetadata(par1World, i2, k1, k2, Block.mushroomCapBrown.blockID + l, l2);
}
}
}
}
for (k1 = 0; k1 < i1; ++k1)
{
l1 = par1World.getBlockId(par3, par4 + k1, par5);
Block block = Block.blocksList[l1];
if (block == null || block.canBeReplacedByLeaves(par1World, par3, par4 + k1, par5))
{
this.setBlockAndMetadata(par1World, par3, par4 + k1, par5, Block.mushroomCapBrown.blockID + l, 10);
}
}
return true;
}
}
}
else
{
return false;
}
}
}

View file

@ -2,6 +2,9 @@ package biomesoplenty.worldgen;
import java.util.Random; import java.util.Random;
import biomesoplenty.api.Blocks;
import biomesoplenty.configuration.BOPBlocks;
import net.minecraft.block.Block; 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;
@ -62,7 +65,7 @@ public class WorldGenMycelium 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) == Block.grass.blockID) if (var39 * var39 + var42 * var42 + var45 * var45 < 1.0D && par1World.getBlockId(var38, var41, var44) == Block.grass.blockID || par1World.getBlockId(var38, var41, var44) == Blocks.holyGrass.get().blockID)
{ {
par1World.setBlock(var38, var41, var44, this.minableBlockId); par1World.setBlock(var38, var41, var44, this.minableBlockId);
} }

View file

@ -20,7 +20,7 @@ public class WorldGenPalmTree1 extends WorldGenerator
int var6 = var1.getBlockId(var3, var4, var5); int var6 = var1.getBlockId(var3, var4, var5);
if (var6 != Block.grass.blockID) if (var6 != Block.grass.blockID && var6 != Blocks.holySand.get().blockID)
{ {
return false; return false;
} }

View file

@ -20,7 +20,7 @@ public class WorldGenPalmTree3 extends WorldGenerator
int var6 = var1.getBlockId(var3, var4, var5); int var6 = var1.getBlockId(var3, var4, var5);
if (var6 != Block.grass.blockID) if (var6 != Block.grass.blockID && var6 != Blocks.holySand.get().blockID)
{ {
return false; return false;
} }

View file

@ -0,0 +1,51 @@
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 WorldGenPromisedBush 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);
if (var6 != Blocks.holyGrass.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;
}
}
}
var1.setBlock(var3, var4, var5, Blocks.holyDirt.get().blockID);
this.setBlockAndMetadata(var1, var3, var4 + 1, var5, Blocks.logs2.get().blockID,0);
this.setBlockAndMetadata(var1, var3, var4 + 2, var5, Blocks.logs2.get().blockID,0);
this.setBlockAndMetadata(var1, var3 + 1, var4 + 2, var5, Blocks.leaves1.get().blockID, 6);
this.setBlockAndMetadata(var1, var3 - 1, var4 + 2, var5, Blocks.leaves1.get().blockID, 6);
this.setBlockAndMetadata(var1, var3, var4 + 2, var5 + 1, Blocks.leaves1.get().blockID, 6);
this.setBlockAndMetadata(var1, var3, var4 + 2, var5 - 1, Blocks.leaves1.get().blockID, 6);
this.setBlockAndMetadata(var1, var3, var4 + 3, var5, Blocks.leaves1.get().blockID, 6);
return true;
}
}
}

View file

@ -76,7 +76,7 @@ public class WorldGenPromisedTree extends WorldGenerator
if ((var11 == Blocks.holyGrass.get().blockID) && par4 < 256 - var6 - 1) if ((var11 == Blocks.holyGrass.get().blockID) && par4 < 256 - var6 - 1)
{ {
this.setBlockAndMetadata(par1World, par3, par4 - 1, par5, Blocks.holyGrass.get().blockID, 0); this.setBlockAndMetadata(par1World, par3, par4 - 1, par5, Blocks.holyDirt.get().blockID, 0);
var21 = par2Random.nextInt(2); var21 = par2Random.nextInt(2);
var13 = 1; var13 = 1;
byte var22 = 0; byte var22 = 0;

View file

@ -74,7 +74,7 @@ public class WorldGenPromisedTree2 extends WorldGenerator
if ((var8 == Blocks.holyGrass.get().blockID) && par4 < 256 - var6 - 1) if ((var8 == Blocks.holyGrass.get().blockID) && par4 < 256 - var6 - 1)
{ {
this.setBlockAndMetadata(par1World, par3, par4 - 1, par5, Blocks.holyGrass.get().blockID, 0); this.setBlockAndMetadata(par1World, par3, par4 - 1, par5, Blocks.holyDirt.get().blockID, 0);
int var16; int var16;
for (var16 = par4 - 3 + var6; var16 <= par4 + var6; ++var16) for (var16 = par4 - 3 + var6; var16 <= par4 + var6; ++var16)

View file

@ -85,10 +85,10 @@ public class WorldGenPromisedTree3 extends WorldGenerator
{ {
if ((var14 == Blocks.holyGrass.get().blockID) && var4 < 256 - var6 - 1) if ((var14 == Blocks.holyGrass.get().blockID) && var4 < 256 - var6 - 1)
{ {
var1.setBlock(var3, var4 - 1, var5, Blocks.holyGrass.get().blockID, 0, 2); var1.setBlock(var3, var4 - 1, var5, Blocks.holyDirt.get().blockID, 0, 2);
var1.setBlock(var3 - 1, var4 - 1, var5, Blocks.holyGrass.get().blockID, 0, 2); var1.setBlock(var3 - 1, var4 - 1, var5, Blocks.holyDirt.get().blockID, 0, 2);
var1.setBlock(var3, var4 - 1, var5 - 1, Blocks.holyGrass.get().blockID, 0, 2); var1.setBlock(var3, var4 - 1, var5 - 1, Blocks.holyDirt.get().blockID, 0, 2);
var1.setBlock(var3 - 1, var4 - 1, var5 - 1, Blocks.holyGrass.get().blockID, 0, 2); var1.setBlock(var3 - 1, var4 - 1, var5 - 1, Blocks.holyDirt.get().blockID, 0, 2);
var15 = var2.nextInt(2); var15 = var2.nextInt(2);
int var16 = 1; int var16 = 1;
boolean var17 = false; boolean var17 = false;

View file

@ -16,7 +16,7 @@ public class WorldGenPromisedWillowTree extends WorldGenerator
{ {
int var6; int var6;
for (var6 = par2Random.nextInt(5) + 8; par1World.getBlockMaterial(par3, par4 - 1, par5) == Material.water; --par4) for (var6 = par2Random.nextInt(12) + 4; par1World.getBlockMaterial(par3, par4 - 1, par5) == Material.water; --par4)
{ {
; ;
} }

View file

@ -0,0 +1,81 @@
package biomesoplenty.worldgen;
import java.util.Random;
import biomesoplenty.api.Blocks;
import biomesoplenty.configuration.BOPBlocks;
import net.minecraft.block.Block;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
public class WorldGenWaterSpring 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 WorldGenWaterSpring(int par1, int par2)
{
this.minableBlockId = par1;
this.numberOfBlocks = par2;
}
public boolean generate(World par1World, Random par2Random, int par3, int par4, int par5)
{
float var6 = par2Random.nextFloat() * (float)Math.PI;
double var7 = (double)((float)(par3 + 8) + MathHelper.sin(var6) * (float)this.numberOfBlocks / 8.0F);
double var9 = (double)((float)(par3 + 8) - MathHelper.sin(var6) * (float)this.numberOfBlocks / 8.0F);
double var11 = (double)((float)(par5 + 8) + MathHelper.cos(var6) * (float)this.numberOfBlocks / 8.0F);
double var13 = (double)((float)(par5 + 8) - MathHelper.cos(var6) * (float)this.numberOfBlocks / 8.0F);
double var15 = (double)(par4 + par2Random.nextInt(3) - 2);
double var17 = (double)(par4 + par2Random.nextInt(3) - 2);
for (int var19 = 0; var19 <= this.numberOfBlocks; ++var19)
{
double var20 = var7 + (var9 - var7) * (double)var19 / (double)this.numberOfBlocks;
double var22 = var15 + (var17 - var15) * (double)var19 / (double)this.numberOfBlocks;
double var24 = var11 + (var13 - var11) * (double)var19 / (double)this.numberOfBlocks;
double var26 = par2Random.nextDouble() * (double)this.numberOfBlocks / 16.0D;
double var28 = (double)(MathHelper.sin((float)var19 * (float)Math.PI / (float)this.numberOfBlocks) + 1.0F) * var26 + 1.0D;
double var30 = (double)(MathHelper.sin((float)var19 * (float)Math.PI / (float)this.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 = ((double)var38 + 0.5D - var20) / (var28 / 2.0D);
if (var39 * var39 < 1.0D)
{
for (int var41 = var33; var41 <= var36; ++var41)
{
double var42 = ((double)var41 + 0.5D - var22) / (var30 / 2.0D);
if (var39 * var39 + var42 * var42 < 1.0D)
{
for (int var44 = var34; var44 <= var37; ++var44)
{
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.holyStone.get().blockID)
{
par1World.setBlock(var38, var41, var44, this.minableBlockId);
}
}
}
}
}
}
}
return true;
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 315 B

After

Width:  |  Height:  |  Size: 324 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 376 B

After

Width:  |  Height:  |  Size: 354 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 362 B

After

Width:  |  Height:  |  Size: 332 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 335 B

After

Width:  |  Height:  |  Size: 301 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 364 B

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 339 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 628 B

After

Width:  |  Height:  |  Size: 600 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 585 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 294 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 294 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 291 B