Finished up the Promised Land sub-biomes. Added item textures for the flower bands.
|
@ -59,7 +59,7 @@ public class Biomes
|
|||
public static Optional<? extends BiomeGenBase> promisedLandPlains = Optional.absent();
|
||||
public static Optional<? extends BiomeGenBase> promisedLandDesert = 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> rainforest = Optional.absent();
|
||||
public static Optional<? extends BiomeGenBase> redwoodForest = Optional.absent();
|
||||
|
|
|
@ -100,7 +100,9 @@ public class BlockReferences {
|
|||
hardSand (Blocks.hardSand, 0),
|
||||
hardDirt (Blocks.hardDirt, 0),
|
||||
holyGrass (Blocks.holyGrass, 0),
|
||||
holyDirt (Blocks.holyDirt, 0),
|
||||
holyStone (Blocks.holyStone, 0),
|
||||
holySand (Blocks.holySand, 0),
|
||||
cragRock (Blocks.cragRock, 0),
|
||||
quicksand (Blocks.mud, 1),
|
||||
smolderingGrass (Blocks.holyGrass, 1),
|
||||
|
|
|
@ -19,7 +19,9 @@ public class Blocks
|
|||
public static Optional<? extends Block> hardIce = Optional.absent();
|
||||
public static Optional<? extends Block> hardSand = 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> holySand = Optional.absent();
|
||||
public static Optional<? extends Block> mud = Optional.absent();
|
||||
public static Optional<? extends Block> originGrass = Optional.absent();
|
||||
public static Optional<? extends Block> redRock = Optional.absent();
|
||||
|
|
|
@ -6,10 +6,13 @@ import java.util.Random;
|
|||
import biomesoplenty.api.Blocks;
|
||||
import biomesoplenty.configuration.BOPBlocks;
|
||||
import biomesoplenty.configuration.BOPConfiguration;
|
||||
import biomesoplenty.worldgen.WorldGenPalmTree1;
|
||||
import biomesoplenty.worldgen.WorldGenPalmTree3;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedShrub;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree2;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree3;
|
||||
import biomesoplenty.worldgen.WorldGenWaterSpring;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
@ -27,22 +30,25 @@ public class BiomeGenPromisedLandDesert extends BiomeGenBase
|
|||
super(par1);
|
||||
this.theBiomeDecorator = new BiomeDecoratorBOP(this);
|
||||
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
|
||||
this.topBlock = (byte)Block.sand.blockID;
|
||||
this.fillerBlock = (byte)Block.sand.blockID;
|
||||
this.customBiomeDecorator.treesPerChunk = -999;
|
||||
this.topBlock = (byte)Blocks.holySand.get().blockID;
|
||||
this.fillerBlock = (byte)Blocks.holySand.get().blockID;
|
||||
this.customBiomeDecorator.treesPerChunk = 4;
|
||||
this.customBiomeDecorator.grassPerChunk = -999;
|
||||
this.customBiomeDecorator.cactiPerChunk = 5;
|
||||
//this.customBiomeDecorator.cactiPerChunk = 5;
|
||||
this.customBiomeDecorator.promisedWillowPerChunk = 80;
|
||||
this.customBiomeDecorator.tinyCactiPerChunk = 10;
|
||||
this.customBiomeDecorator.aloePerChunk = 2;
|
||||
this.customBiomeDecorator.generateLakes = false;
|
||||
this.customBiomeDecorator.pondsPerChunk = -100;
|
||||
this.customBiomeDecorator.waterLakesPerChunk = 2;
|
||||
this.spawnableCreatureList.clear();
|
||||
this.spawnableWaterCreatureList.clear();
|
||||
this.spawnableMonsterList.clear();
|
||||
this.spawnableCaveCreatureList.clear();
|
||||
this.customBiomeDecorator.generatePumpkins = false;
|
||||
this.customBiomeDecorator.generatePumpkins = true;
|
||||
this.customBiomeDecorator.generateMelons = true;
|
||||
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)
|
||||
{
|
||||
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 var8;
|
||||
|
||||
for (var5 = 0; var5 < 5; ++var5)
|
||||
for (var5 = 0; var5 < 10; ++var5)
|
||||
{
|
||||
var6 = par3 + par2Random.nextInt(16);
|
||||
var7 = par2Random.nextInt(60);
|
||||
|
|
|
@ -10,6 +10,7 @@ import biomesoplenty.worldgen.WorldGenPromisedShrub;
|
|||
import biomesoplenty.worldgen.WorldGenPromisedTree;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree2;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree3;
|
||||
import biomesoplenty.worldgen.WorldGenWaterSpring;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
@ -28,24 +29,23 @@ public class BiomeGenPromisedLandForest extends BiomeGenBase
|
|||
this.theBiomeDecorator = new BiomeDecoratorBOP(this);
|
||||
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
|
||||
this.topBlock = (byte)Blocks.holyGrass.get().blockID;
|
||||
this.fillerBlock = (byte)Blocks.holyStone.get().blockID;
|
||||
this.customBiomeDecorator.treesPerChunk = 8;
|
||||
this.fillerBlock = (byte)Blocks.holyDirt.get().blockID;
|
||||
this.customBiomeDecorator.treesPerChunk = 12;
|
||||
this.customBiomeDecorator.grassPerChunk = -999;
|
||||
this.customBiomeDecorator.holyTallGrassPerChunk = 50;
|
||||
this.customBiomeDecorator.promisedWillowPerChunk = 40;
|
||||
this.customBiomeDecorator.promisedWillowPerChunk = 80;
|
||||
this.customBiomeDecorator.pinkFlowersPerChunk = 6;
|
||||
this.customBiomeDecorator.glowFlowersPerChunk = 3;
|
||||
this.customBiomeDecorator.blueMilksPerChunk = 5;
|
||||
this.customBiomeDecorator.generateLakes = false;
|
||||
this.customBiomeDecorator.pondsPerChunk = -100;
|
||||
this.customBiomeDecorator.waterLakesPerChunk = 5;
|
||||
this.customBiomeDecorator.waterLakesPerChunk = 8;
|
||||
this.spawnableCreatureList.clear();
|
||||
this.spawnableWaterCreatureList.clear();
|
||||
this.spawnableMonsterList.clear();
|
||||
this.spawnableCaveCreatureList.clear();
|
||||
this.customBiomeDecorator.generatePumpkins = 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 var8;
|
||||
|
||||
for (var5 = 0; var5 < 5; ++var5)
|
||||
for (var5 = 0; var5 < 10; ++var5)
|
||||
{
|
||||
var6 = par3 + par2Random.nextInt(16);
|
||||
var7 = par2Random.nextInt(60);
|
||||
|
|
|
@ -6,37 +6,45 @@ import java.util.Random;
|
|||
import biomesoplenty.api.Blocks;
|
||||
import biomesoplenty.configuration.BOPBlocks;
|
||||
import biomesoplenty.configuration.BOPConfiguration;
|
||||
import biomesoplenty.worldgen.WorldGenBOPBigMushroom;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedBush;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedShrub;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree2;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree3;
|
||||
import biomesoplenty.worldgen.WorldGenWaterSpring;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
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.WorldGenerator;
|
||||
|
||||
public class BiomeGenPromisedLandCrystals extends BiomeGenBase
|
||||
public class BiomeGenPromisedLandMushroom extends BiomeGenBase
|
||||
{
|
||||
private WorldGenerator theWorldGenerator;
|
||||
private BiomeDecoratorBOP customBiomeDecorator;
|
||||
|
||||
public BiomeGenPromisedLandCrystals(int par1)
|
||||
public BiomeGenPromisedLandMushroom(int par1)
|
||||
{
|
||||
super(par1);
|
||||
this.theBiomeDecorator = new BiomeDecoratorBOP(this);
|
||||
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
|
||||
this.topBlock = (byte)Blocks.holyGrass.get().blockID;
|
||||
this.fillerBlock = (byte)Blocks.holyStone.get().blockID;
|
||||
this.customBiomeDecorator.treesPerChunk = -999;
|
||||
this.fillerBlock = (byte)Blocks.holyDirt.get().blockID;
|
||||
this.customBiomeDecorator.treesPerChunk = 15;
|
||||
this.customBiomeDecorator.grassPerChunk = -999;
|
||||
this.customBiomeDecorator.holyTallGrassPerChunk = 2;
|
||||
this.customBiomeDecorator.promisedWillowPerChunk = -999;
|
||||
this.customBiomeDecorator.holyTallGrassPerChunk = 50;
|
||||
this.customBiomeDecorator.promisedWillowPerChunk = 80;
|
||||
this.customBiomeDecorator.pinkFlowersPerChunk = 6;
|
||||
this.customBiomeDecorator.glowFlowersPerChunk = 10;
|
||||
this.customBiomeDecorator.blueMilksPerChunk = 5;
|
||||
this.customBiomeDecorator.blueMilksPerChunk = 15;
|
||||
this.customBiomeDecorator.toadstoolsPerChunk = 15;
|
||||
this.customBiomeDecorator.portobellosPerChunk = 15;
|
||||
this.customBiomeDecorator.mushroomsPerChunk = 30;
|
||||
//this.customBiomeDecorator.bigMushroomsPerChunk = 10;
|
||||
this.customBiomeDecorator.generateLakes = false;
|
||||
//this.customBiomeDecorator.generateMycelium = true;
|
||||
this.customBiomeDecorator.pondsPerChunk = -100;
|
||||
this.customBiomeDecorator.waterLakesPerChunk = 5;
|
||||
this.spawnableCreatureList.clear();
|
||||
|
@ -45,7 +53,15 @@ public class BiomeGenPromisedLandCrystals extends BiomeGenBase
|
|||
this.spawnableCaveCreatureList.clear();
|
||||
this.customBiomeDecorator.generatePumpkins = 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 var8;
|
||||
|
||||
for (var5 = 0; var5 < 5; ++var5)
|
||||
for (var5 = 0; var5 < 10; ++var5)
|
||||
{
|
||||
var6 = par3 + par2Random.nextInt(16);
|
||||
var7 = par2Random.nextInt(60);
|
|
@ -6,10 +6,12 @@ import java.util.Random;
|
|||
import biomesoplenty.api.Blocks;
|
||||
import biomesoplenty.configuration.BOPBlocks;
|
||||
import biomesoplenty.configuration.BOPConfiguration;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedBush;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedShrub;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree2;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedTree3;
|
||||
import biomesoplenty.worldgen.WorldGenWaterSpring;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
@ -28,21 +30,30 @@ public class BiomeGenPromisedLandPlains extends BiomeGenBase
|
|||
this.theBiomeDecorator = new BiomeDecoratorBOP(this);
|
||||
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
|
||||
this.topBlock = (byte)Blocks.holyGrass.get().blockID;
|
||||
this.fillerBlock = (byte)Blocks.holyStone.get().blockID;
|
||||
this.customBiomeDecorator.treesPerChunk = -999;
|
||||
this.fillerBlock = (byte)Blocks.holyDirt.get().blockID;
|
||||
this.customBiomeDecorator.treesPerChunk = 4;
|
||||
this.customBiomeDecorator.grassPerChunk = -999;
|
||||
this.customBiomeDecorator.holyTallGrassPerChunk = 999;
|
||||
this.customBiomeDecorator.promisedWillowPerChunk = 20;
|
||||
this.customBiomeDecorator.promisedWillowPerChunk = 80;
|
||||
this.customBiomeDecorator.blueMilksPerChunk = 1;
|
||||
this.customBiomeDecorator.generateLakes = false;
|
||||
this.customBiomeDecorator.pondsPerChunk = -100;
|
||||
this.customBiomeDecorator.waterLakesPerChunk = 4;
|
||||
this.spawnableCreatureList.clear();
|
||||
this.spawnableWaterCreatureList.clear();
|
||||
this.spawnableMonsterList.clear();
|
||||
this.spawnableCaveCreatureList.clear();
|
||||
this.customBiomeDecorator.generatePumpkins = 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 var8;
|
||||
|
||||
for (var5 = 0; var5 < 5; ++var5)
|
||||
for (var5 = 0; var5 < 10; ++var5)
|
||||
{
|
||||
var6 = par3 + par2Random.nextInt(16);
|
||||
var7 = par2Random.nextInt(60);
|
||||
|
|
|
@ -8,11 +8,11 @@ import biomesoplenty.configuration.BOPBlocks;
|
|||
import biomesoplenty.configuration.BOPConfiguration;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedShrub;
|
||||
import biomesoplenty.worldgen.WorldGenPromisedWillowTree;
|
||||
import biomesoplenty.worldgen.WorldGenWaterSpring;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import net.minecraft.world.gen.feature.WorldGenMinable;
|
||||
import net.minecraft.world.gen.feature.WorldGenerator;
|
||||
|
||||
public class BiomeGenPromisedLandSwamp extends BiomeGenBase
|
||||
|
@ -26,24 +26,23 @@ public class BiomeGenPromisedLandSwamp extends BiomeGenBase
|
|||
this.theBiomeDecorator = new BiomeDecoratorBOP(this);
|
||||
this.customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
|
||||
this.topBlock = (byte)Blocks.holyGrass.get().blockID;
|
||||
this.fillerBlock = (byte)Blocks.holyStone.get().blockID;
|
||||
this.customBiomeDecorator.treesPerChunk = 4;
|
||||
this.fillerBlock = (byte)Blocks.holyDirt.get().blockID;
|
||||
this.customBiomeDecorator.treesPerChunk = 24;
|
||||
this.customBiomeDecorator.grassPerChunk = -999;
|
||||
this.customBiomeDecorator.holyTallGrassPerChunk = 25;
|
||||
this.customBiomeDecorator.holyTallGrassPerChunk = 50;
|
||||
this.customBiomeDecorator.promisedWillowPerChunk = 80;
|
||||
this.customBiomeDecorator.pinkFlowersPerChunk = 6;
|
||||
this.customBiomeDecorator.glowFlowersPerChunk = 3;
|
||||
this.customBiomeDecorator.blueMilksPerChunk = 15;
|
||||
this.customBiomeDecorator.generateLakes = false;
|
||||
this.customBiomeDecorator.pondsPerChunk = -100;
|
||||
this.customBiomeDecorator.waterLakesPerChunk = 10;
|
||||
this.customBiomeDecorator.waterLakesPerChunk = 17;
|
||||
this.spawnableCreatureList.clear();
|
||||
this.spawnableWaterCreatureList.clear();
|
||||
this.spawnableMonsterList.clear();
|
||||
this.spawnableCaveCreatureList.clear();
|
||||
this.customBiomeDecorator.generatePumpkins = false;
|
||||
//this.customBiomeDecorator.generateLakes = false;
|
||||
this.theWorldGenerator = new WorldGenMinable(Block.waterMoving.blockID, 8);
|
||||
this.theWorldGenerator = new WorldGenWaterSpring(Block.waterMoving.blockID, 8);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -132,13 +132,13 @@ public class BlockBOPFlower extends BlockFlower
|
|||
protected boolean canThisPlantGrowOnThisBlockID(int id, int metadata)
|
||||
{
|
||||
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
|
||||
return id == Block.sand.blockID;
|
||||
return id == Block.sand.blockID || id == Blocks.redRock.get().blockID || id == Blocks.holySand.get().blockID;
|
||||
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
|
||||
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
|
||||
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID || id == Blocks.holyGrass.get().blockID;
|
||||
else
|
||||
|
@ -156,16 +156,16 @@ public class BlockBOPFlower extends BlockFlower
|
|||
switch (meta)
|
||||
{
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.mycelium.blockID || id == Blocks.holyGrass.get().blockID;
|
||||
|
|
|
@ -10,7 +10,7 @@ public class BlockBOPGeneric extends Block
|
|||
{
|
||||
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;
|
||||
|
@ -58,6 +58,14 @@ public class BlockBOPGeneric extends Block
|
|||
|
||||
case MUD_BRICK:
|
||||
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;
|
||||
|
||||
default:
|
||||
|
@ -104,6 +112,14 @@ public class BlockBOPGeneric extends Block
|
|||
|
||||
case MUD_BRICK:
|
||||
texture = iconRegister.registerIcon("BiomesOPlenty:mudbrick");
|
||||
break;
|
||||
|
||||
case HOLY_DIRT:
|
||||
texture = iconRegister.registerIcon("BiomesOPlenty:holydirt");
|
||||
break;
|
||||
|
||||
case HOLY_SAND:
|
||||
texture = iconRegister.registerIcon("BiomesOPlenty:holysand");
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
|
@ -30,13 +30,13 @@ public class BlockBOPGrass extends Block
|
|||
this.setCreativeTab(BiomesOPlenty.tabBiomesOPlenty);
|
||||
setStepSound(Block.soundGrassFootstep);
|
||||
setHardness(0.6F);
|
||||
setLightValue(0.25F);
|
||||
//setLightValue(0.25F);
|
||||
}
|
||||
|
||||
@Override
|
||||
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][2] = 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)
|
||||
{
|
||||
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)
|
||||
{
|
||||
|
@ -147,7 +147,7 @@ public class BlockBOPGrass extends Block
|
|||
int var9 = z + random.nextInt(3) - 1;
|
||||
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);
|
||||
}
|
||||
|
@ -179,7 +179,7 @@ public class BlockBOPGrass extends Block
|
|||
@Override
|
||||
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;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -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.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.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.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));
|
||||
|
@ -203,7 +203,7 @@ public class BOPBiomes {
|
|||
BiomeDictionary.registerBiomeType(Biomes.promisedLandPlains.get(), Type.PLAINS, Type.MAGICAL);
|
||||
BiomeDictionary.registerBiomeType(Biomes.promisedLandDesert.get(), Type.DESERT, 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.rainforest.get(), Type.JUNGLE, Type.HILLS, Type.FOREST);
|
||||
BiomeDictionary.registerBiomeType(Biomes.redwoodForest.get(), Type.FOREST);
|
||||
|
|
|
@ -123,7 +123,9 @@ public class BOPBlocks {
|
|||
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.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.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));
|
||||
|
@ -188,6 +190,8 @@ public class BOPBlocks {
|
|||
GameRegistry.registerBlock(Blocks.hardDirt.get(), "hardDirt");
|
||||
// GameRegistry.registerBlock(Blocks.holyGrass.get(), "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.promisedPortal.get(), "promisedPortal");
|
||||
GameRegistry.registerBlock(Blocks.amethystOre.get(), ItemBOPAmethyst.class, "amethystOre");
|
||||
|
@ -314,6 +318,8 @@ public class BOPBlocks {
|
|||
// 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, 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(new ItemStack(Blocks.plants.get(),1,4), "Holy Tall Grass");
|
||||
LanguageRegistry.addName(Blocks.promisedPortal.get(), "Promised Land Portal");
|
||||
|
|
|
@ -114,7 +114,9 @@ public class BOPConfiguration {
|
|||
public static int hardSandID;
|
||||
public static int hardDirtID;
|
||||
public static int holyGrassID;
|
||||
public static int holyDirtID;
|
||||
public static int holyStoneID;
|
||||
public static int holySandID;
|
||||
public static int cragRockID;
|
||||
|
||||
public static int plantsID;
|
||||
|
@ -268,7 +270,7 @@ public class BOPConfiguration {
|
|||
public static int promisedLandPlainsID;
|
||||
public static int promisedLandDesertID;
|
||||
public static int promisedLandSwampID;
|
||||
public static int promisedLandCrystalsID;
|
||||
public static int promisedLandMushroomID;
|
||||
public static int quagmireID;
|
||||
public static int rainforestID;
|
||||
public static int redwoodForestID;
|
||||
|
@ -589,8 +591,10 @@ public class BOPConfiguration {
|
|||
hardSandID = config.getTerrainBlock("Terrain Block IDs", "Hard Sand ID", 167, 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();
|
||||
holyStoneID = config.getTerrainBlock("Terrain Block IDs", "Holy Stone ID", 170, null).getInt();
|
||||
cragRockID = config.getTerrainBlock("Terrain Block IDs", "Crag Rock ID", 171, null).getInt();
|
||||
holyDirtID = config.getTerrainBlock("Terrain Block IDs", "Holy Dirt ID", 170, 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
|
||||
plantsID = config.getBlock("Plant ID", 1920, null).getInt();
|
||||
|
@ -688,11 +692,11 @@ public class BOPConfiguration {
|
|||
|
||||
//23-79 ExtraBiomesXL
|
||||
|
||||
promisedLandForestID = config.get("Biome IDs", "Promised Land Forest ID", 75).getInt();
|
||||
promisedLandPlainsID = config.get("Biome IDs", "Promised Land Plains ID", 76).getInt();
|
||||
promisedLandDesertID = config.get("Biome IDs", "Promised Land Desert ID", 77).getInt();
|
||||
promisedLandSwampID = config.get("Biome IDs", "Promised Land Swamp ID", 78).getInt();
|
||||
promisedLandCrystalsID = config.get("Biome IDs", "Promised Land Crystals ID", 79).getInt();
|
||||
promisedLandForestID = config.get("Biome IDs", "Wonderous Woods (Promised Land) ID", 75).getInt();
|
||||
promisedLandPlainsID = config.get("Biome IDs", "Purified Plains (Promised Land) ID", 76).getInt();
|
||||
promisedLandDesertID = config.get("Biome IDs", "Divine Desert (Promised Land) ID", 77).getInt();
|
||||
promisedLandSwampID = config.get("Biome IDs", "Blessed Bog (Promised Land) ID", 78).getInt();
|
||||
promisedLandMushroomID = config.get("Biome IDs", "Majestic Mushrooms (Promised Land) ID", 79).getInt();
|
||||
|
||||
//80-169 Better World Generation 4
|
||||
|
||||
|
|
|
@ -58,7 +58,7 @@ public class ForestryIntegration
|
|||
EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandPlainsID);
|
||||
EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandDesertID);
|
||||
EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandSwampID);
|
||||
EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandCrystalsID);
|
||||
EnumTemperature.hotBiomeIds.add(BOPConfiguration.promisedLandMushroomID);
|
||||
EnumTemperature.hotBiomeIds.add(BOPConfiguration.rainforestID);
|
||||
EnumTemperature.hotBiomeIds.add(BOPConfiguration.tropicsID);
|
||||
|
||||
|
@ -67,7 +67,7 @@ public class ForestryIntegration
|
|||
EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandPlainsID);
|
||||
EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandDesertID);
|
||||
EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandSwampID);
|
||||
EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandCrystalsID);
|
||||
EnumHumidity.dampBiomeIds.add(BOPConfiguration.promisedLandMushroomID);
|
||||
EnumHumidity.dampBiomeIds.add(BOPConfiguration.rainforestID);
|
||||
EnumHumidity.dampBiomeIds.add(BOPConfiguration.tropicsID);
|
||||
|
||||
|
@ -279,6 +279,7 @@ public class ForestryIntegration
|
|||
{
|
||||
// Miner's Backpack
|
||||
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.redRock.get(), 1, OreDictionary.WILDCARD_VALUE));
|
||||
BackpackManager.backpackItems[MINER].add(new ItemStack(Blocks.driedDirt.get(), 1, 0));
|
||||
|
|
|
@ -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("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("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("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));
|
||||
|
|
|
@ -17,7 +17,7 @@ public abstract class BiomeLayer
|
|||
BiomeLayer obj = new BiomeLayerCreate(1L);
|
||||
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));
|
||||
}
|
||||
|
@ -26,7 +26,7 @@ public abstract class BiomeLayer
|
|||
obj = new BiomeLayerBiomes(200L, ((BiomeLayer)(obj)), worldtype);
|
||||
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));
|
||||
}
|
||||
|
|
|
@ -36,9 +36,9 @@ public class BiomeLayerBiomes extends BiomeLayer
|
|||
AllowedBiomes.add(Biomes.promisedLandSwamp.get());
|
||||
}
|
||||
|
||||
if (Biomes.promisedLandCrystals.isPresent())
|
||||
if (Biomes.promisedLandMushroom.isPresent())
|
||||
{
|
||||
AllowedBiomes.add(Biomes.promisedLandCrystals.get());
|
||||
AllowedBiomes.add(Biomes.promisedLandMushroom.get());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
224
src/minecraft/biomesoplenty/worldgen/WorldGenBOPBigMushroom.java
Normal 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;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -2,6 +2,9 @@ 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;
|
||||
|
@ -62,7 +65,7 @@ public class WorldGenMycelium extends WorldGenerator
|
|||
{
|
||||
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);
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ public class WorldGenPalmTree1 extends WorldGenerator
|
|||
|
||||
int var6 = var1.getBlockId(var3, var4, var5);
|
||||
|
||||
if (var6 != Block.grass.blockID)
|
||||
if (var6 != Block.grass.blockID && var6 != Blocks.holySand.get().blockID)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ public class WorldGenPalmTree3 extends WorldGenerator
|
|||
|
||||
int var6 = var1.getBlockId(var3, var4, var5);
|
||||
|
||||
if (var6 != Block.grass.blockID)
|
||||
if (var6 != Block.grass.blockID && var6 != Blocks.holySand.get().blockID)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -76,7 +76,7 @@ public class WorldGenPromisedTree extends WorldGenerator
|
|||
|
||||
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);
|
||||
var13 = 1;
|
||||
byte var22 = 0;
|
||||
|
|
|
@ -74,7 +74,7 @@ public class WorldGenPromisedTree2 extends WorldGenerator
|
|||
|
||||
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;
|
||||
|
||||
for (var16 = par4 - 3 + var6; var16 <= par4 + var6; ++var16)
|
||||
|
|
|
@ -85,10 +85,10 @@ public class WorldGenPromisedTree3 extends WorldGenerator
|
|||
{
|
||||
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 - 1, var4 - 1, var5, Blocks.holyGrass.get().blockID, 0, 2);
|
||||
var1.setBlock(var3, var4 - 1, var5 - 1, Blocks.holyGrass.get().blockID, 0, 2);
|
||||
var1.setBlock(var3 - 1, var4 - 1, var5 - 1, 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.holyDirt.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.holyDirt.get().blockID, 0, 2);
|
||||
var15 = var2.nextInt(2);
|
||||
int var16 = 1;
|
||||
boolean var17 = false;
|
||||
|
|
|
@ -16,7 +16,7 @@ public class WorldGenPromisedWillowTree extends WorldGenerator
|
|||
{
|
||||
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)
|
||||
{
|
||||
;
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 315 B After Width: | Height: | Size: 324 B |
Before Width: | Height: | Size: 376 B After Width: | Height: | Size: 354 B |
Before Width: | Height: | Size: 362 B After Width: | Height: | Size: 332 B |
Before Width: | Height: | Size: 335 B After Width: | Height: | Size: 301 B |
Before Width: | Height: | Size: 364 B After Width: | Height: | Size: 366 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/blocks/holydirt.png
Normal file
After Width: | Height: | Size: 339 B |
Before Width: | Height: | Size: 628 B After Width: | Height: | Size: 600 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/blocks/holysand.png
Normal file
After Width: | Height: | Size: 585 B |
After Width: | Height: | Size: 294 B |
After Width: | Height: | Size: 294 B |
After Width: | Height: | Size: 296 B |
After Width: | Height: | Size: 291 B |