Added 3 new flowers, Tropics sub-biome, tweaked Tropics biome
This commit is contained in:
parent
34cea05484
commit
91cb1183c1
20 changed files with 401 additions and 2 deletions
|
@ -113,7 +113,10 @@ public class Biomes
|
||||||
public static Optional<? extends BiomeGenBase> timber = Optional.absent();
|
public static Optional<? extends BiomeGenBase> timber = Optional.absent();
|
||||||
public static Optional<? extends BiomeGenBase> timberThin = Optional.absent();
|
public static Optional<? extends BiomeGenBase> timberThin = Optional.absent();
|
||||||
public static Optional<? extends BiomeGenBase> tropicalRainforest = Optional.absent();
|
public static Optional<? extends BiomeGenBase> tropicalRainforest = Optional.absent();
|
||||||
|
|
||||||
public static Optional<? extends BiomeGenBase> tropics = Optional.absent();
|
public static Optional<? extends BiomeGenBase> tropics = Optional.absent();
|
||||||
|
public static Optional<? extends BiomeGenBase> tropicsMountain = Optional.absent();
|
||||||
|
|
||||||
public static Optional<? extends BiomeGenBase> tundra = Optional.absent();
|
public static Optional<? extends BiomeGenBase> tundra = Optional.absent();
|
||||||
public static Optional<? extends BiomeGenBase> volcano = Optional.absent();
|
public static Optional<? extends BiomeGenBase> volcano = Optional.absent();
|
||||||
public static Optional<? extends BiomeGenBase> wasteland = Optional.absent();
|
public static Optional<? extends BiomeGenBase> wasteland = Optional.absent();
|
||||||
|
|
|
@ -181,6 +181,10 @@ public class BlockReferences {
|
||||||
aloe (Blocks.flowers, 12),
|
aloe (Blocks.flowers, 12),
|
||||||
sunflower (Blocks.flowers, 13),
|
sunflower (Blocks.flowers, 13),
|
||||||
dandelion (Blocks.flowers, 15),
|
dandelion (Blocks.flowers, 15),
|
||||||
|
|
||||||
|
hibiscus (Blocks.flowers2, 0),
|
||||||
|
lilyofthevalley (Blocks.flowers2, 1),
|
||||||
|
burningblossom (Blocks.flowers2, 2),
|
||||||
;
|
;
|
||||||
|
|
||||||
public Optional<? extends Block> block;
|
public Optional<? extends Block> block;
|
||||||
|
|
|
@ -64,6 +64,7 @@ public class Blocks
|
||||||
|
|
||||||
// Plants
|
// Plants
|
||||||
public static Optional<? extends Block> flowers = Optional.absent();
|
public static Optional<? extends Block> flowers = Optional.absent();
|
||||||
|
public static Optional<? extends Block> flowers2 = Optional.absent();
|
||||||
public static Optional<? extends Block> mushrooms = Optional.absent();
|
public static Optional<? extends Block> mushrooms = Optional.absent();
|
||||||
public static Optional<? extends Block> coral = Optional.absent();
|
public static Optional<? extends Block> coral = Optional.absent();
|
||||||
public static Optional<? extends Block> leaves1 = Optional.absent();
|
public static Optional<? extends Block> leaves1 = Optional.absent();
|
||||||
|
|
|
@ -219,6 +219,9 @@ public class BiomeDecoratorBOP extends BiomeDecorator
|
||||||
public WorldGenerator graveGen;
|
public WorldGenerator graveGen;
|
||||||
public WorldGenerator pumpkinAltGen;
|
public WorldGenerator pumpkinAltGen;
|
||||||
public WorldGenerator coralGen;
|
public WorldGenerator coralGen;
|
||||||
|
public WorldGenerator hibiscusGen;
|
||||||
|
public WorldGenerator lilyOfTheValleyGen;
|
||||||
|
public WorldGenerator burningBlossomGen;
|
||||||
|
|
||||||
public WorldGenerator boneSpineGen;
|
public WorldGenerator boneSpineGen;
|
||||||
public WorldGenerator boneSpine2Gen;
|
public WorldGenerator boneSpine2Gen;
|
||||||
|
@ -304,6 +307,9 @@ public class BiomeDecoratorBOP extends BiomeDecorator
|
||||||
public int gravesPerChunk;
|
public int gravesPerChunk;
|
||||||
public int pumpkinsPerChunk;
|
public int pumpkinsPerChunk;
|
||||||
public int coralPerChunk;
|
public int coralPerChunk;
|
||||||
|
public int hibiscusPerChunk;
|
||||||
|
public int lilyOfTheValleysPerChunk;
|
||||||
|
public int burningBlossomsPerChunk;
|
||||||
|
|
||||||
public int boneSpinesPerChunk;
|
public int boneSpinesPerChunk;
|
||||||
public int boneSpines2PerChunk;
|
public int boneSpines2PerChunk;
|
||||||
|
@ -453,6 +459,9 @@ public class BiomeDecoratorBOP extends BiomeDecorator
|
||||||
tinyCactusGen = new WorldGenBOPFlowers(Blocks.plants.get().blockID, 12);
|
tinyCactusGen = new WorldGenBOPFlowers(Blocks.plants.get().blockID, 12);
|
||||||
aloeGen = new WorldGenBOPFlowers(Blocks.flowers.get().blockID, 12);
|
aloeGen = new WorldGenBOPFlowers(Blocks.flowers.get().blockID, 12);
|
||||||
coralGen = new WorldGenCoral(Blocks.coral.get().blockID, 4);
|
coralGen = new WorldGenCoral(Blocks.coral.get().blockID, 4);
|
||||||
|
hibiscusGen = new WorldGenBOPFlowers(Blocks.flowers2.get().blockID, 0);
|
||||||
|
lilyOfTheValleyGen = new WorldGenBOPFlowers(Blocks.flowers2.get().blockID, 1);
|
||||||
|
burningBlossomGen = new WorldGenBOPFlowers(Blocks.flowers2.get().blockID, 2);
|
||||||
lilyflowerGen = new WorldGenLilyflower();
|
lilyflowerGen = new WorldGenLilyflower();
|
||||||
deathbloomGen = new WorldGenBOPFlowers(Blocks.flowers.get().blockID, 2);
|
deathbloomGen = new WorldGenBOPFlowers(Blocks.flowers.get().blockID, 2);
|
||||||
hydrangeaGen = new WorldGenBOPFlowers(Blocks.flowers.get().blockID, 4);
|
hydrangeaGen = new WorldGenBOPFlowers(Blocks.flowers.get().blockID, 4);
|
||||||
|
@ -578,6 +587,9 @@ public class BiomeDecoratorBOP extends BiomeDecorator
|
||||||
gravesPerChunk = 0;
|
gravesPerChunk = 0;
|
||||||
pumpkinsPerChunk = 0;
|
pumpkinsPerChunk = 0;
|
||||||
coralPerChunk = 0;
|
coralPerChunk = 0;
|
||||||
|
hibiscusPerChunk = 0;
|
||||||
|
lilyOfTheValleysPerChunk = 0;
|
||||||
|
burningBlossomsPerChunk = 0;
|
||||||
generateLakes = true;
|
generateLakes = true;
|
||||||
generateAsh = false;
|
generateAsh = false;
|
||||||
generateMycelium = false;
|
generateMycelium = false;
|
||||||
|
@ -1099,6 +1111,30 @@ public class BiomeDecoratorBOP extends BiomeDecorator
|
||||||
plantBlueGen.generate(currentWorld, randomGenerator, var3, var4, var5);
|
plantBlueGen.generate(currentWorld, randomGenerator, var3, var4, var5);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (var2 = 0; var2 < hibiscusPerChunk; ++var2)
|
||||||
|
{
|
||||||
|
var3 = chunk_X + randomGenerator.nextInt(16) + 8;
|
||||||
|
var4 = randomGenerator.nextInt(256);
|
||||||
|
var5 = chunk_Z + randomGenerator.nextInt(16) + 8;
|
||||||
|
hibiscusGen.generate(currentWorld, randomGenerator, var3, var4, var5);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var2 = 0; var2 < lilyOfTheValleysPerChunk; ++var2)
|
||||||
|
{
|
||||||
|
var3 = chunk_X + randomGenerator.nextInt(16) + 8;
|
||||||
|
var4 = randomGenerator.nextInt(256);
|
||||||
|
var5 = chunk_Z + randomGenerator.nextInt(16) + 8;
|
||||||
|
lilyOfTheValleyGen.generate(currentWorld, randomGenerator, var3, var4, var5);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var2 = 0; var2 < burningBlossomsPerChunk; ++var2)
|
||||||
|
{
|
||||||
|
var3 = chunk_X + randomGenerator.nextInt(16) + 8;
|
||||||
|
var4 = randomGenerator.nextInt(256);
|
||||||
|
var5 = chunk_Z + randomGenerator.nextInt(16) + 8;
|
||||||
|
burningBlossomGen.generate(currentWorld, randomGenerator, var3, var4, var5);
|
||||||
|
}
|
||||||
|
|
||||||
for (var2 = 0; var2 < hydrangeasPerChunk; ++var2)
|
for (var2 = 0; var2 < hydrangeasPerChunk; ++var2)
|
||||||
{
|
{
|
||||||
var3 = chunk_X + randomGenerator.nextInt(16) + 8;
|
var3 = chunk_X + randomGenerator.nextInt(16) + 8;
|
||||||
|
|
|
@ -23,6 +23,7 @@ public class BiomeGenBirchForest extends BiomeGenBase
|
||||||
customBiomeDecorator.flowersPerChunk = -999;
|
customBiomeDecorator.flowersPerChunk = -999;
|
||||||
customBiomeDecorator.tinyFlowersPerChunk = 6;
|
customBiomeDecorator.tinyFlowersPerChunk = 6;
|
||||||
customBiomeDecorator.poisonIvyPerChunk = 3;
|
customBiomeDecorator.poisonIvyPerChunk = 3;
|
||||||
|
customBiomeDecorator.lilyOfTheValleysPerChunk = 15;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -24,7 +24,7 @@ public class BiomeGenTropics extends BiomeGenBase
|
||||||
super(par1);
|
super(par1);
|
||||||
theBiomeDecorator = new BiomeDecoratorBOP(this);
|
theBiomeDecorator = new BiomeDecoratorBOP(this);
|
||||||
customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
|
customBiomeDecorator = (BiomeDecoratorBOP)theBiomeDecorator;
|
||||||
customBiomeDecorator.treesPerChunk = 8;
|
customBiomeDecorator.treesPerChunk = 4;
|
||||||
customBiomeDecorator.grassPerChunk = 7;
|
customBiomeDecorator.grassPerChunk = 7;
|
||||||
customBiomeDecorator.flowersPerChunk = 10;
|
customBiomeDecorator.flowersPerChunk = 10;
|
||||||
customBiomeDecorator.sandPerChunk = 50;
|
customBiomeDecorator.sandPerChunk = 50;
|
||||||
|
@ -32,6 +32,7 @@ public class BiomeGenTropics extends BiomeGenBase
|
||||||
customBiomeDecorator.orangeFlowersPerChunk = 10;
|
customBiomeDecorator.orangeFlowersPerChunk = 10;
|
||||||
customBiomeDecorator.whiteFlowersPerChunk = 4;
|
customBiomeDecorator.whiteFlowersPerChunk = 4;
|
||||||
customBiomeDecorator.sunflowersPerChunk = 2;
|
customBiomeDecorator.sunflowersPerChunk = 2;
|
||||||
|
customBiomeDecorator.hibiscusPerChunk = 45;
|
||||||
customBiomeDecorator.generatePumpkins = false;
|
customBiomeDecorator.generatePumpkins = false;
|
||||||
spawnableMonsterList.add(new SpawnListEntry(EntityJungleSpider.class, 12, 6, 6));
|
spawnableMonsterList.add(new SpawnListEntry(EntityJungleSpider.class, 12, 6, 6));
|
||||||
spawnableCreatureList.clear();
|
spawnableCreatureList.clear();
|
||||||
|
|
|
@ -20,6 +20,7 @@ public class BiomeGenNetherBase extends BiomeGenBase
|
||||||
topBlock = (byte)Block.netherrack.blockID;
|
topBlock = (byte)Block.netherrack.blockID;
|
||||||
fillerBlock = (byte)Block.netherrack.blockID;
|
fillerBlock = (byte)Block.netherrack.blockID;
|
||||||
customBiomeDecorator.gravesPerChunk = 1;
|
customBiomeDecorator.gravesPerChunk = 1;
|
||||||
|
customBiomeDecorator.burningBlossomsPerChunk = 1;
|
||||||
spawnableMonsterList.clear();
|
spawnableMonsterList.clear();
|
||||||
spawnableCreatureList.clear();
|
spawnableCreatureList.clear();
|
||||||
spawnableWaterCreatureList.clear();
|
spawnableWaterCreatureList.clear();
|
||||||
|
|
|
@ -32,6 +32,7 @@ public class BiomeGenNetherGarden extends BiomeGenBase
|
||||||
customBiomeDecorator.glowshroomsPerChunk = 3;
|
customBiomeDecorator.glowshroomsPerChunk = 3;
|
||||||
customBiomeDecorator.toadstoolsPerChunk = 5;
|
customBiomeDecorator.toadstoolsPerChunk = 5;
|
||||||
customBiomeDecorator.gravesPerChunk = 1;
|
customBiomeDecorator.gravesPerChunk = 1;
|
||||||
|
customBiomeDecorator.burningBlossomsPerChunk = 8;
|
||||||
spawnableMonsterList.clear();
|
spawnableMonsterList.clear();
|
||||||
spawnableCreatureList.clear();
|
spawnableCreatureList.clear();
|
||||||
spawnableWaterCreatureList.clear();
|
spawnableWaterCreatureList.clear();
|
||||||
|
|
|
@ -30,6 +30,7 @@ public class BiomeGenNetherLava extends BiomeGenBase
|
||||||
customBiomeDecorator.netherLavaPerChunk = 20;
|
customBiomeDecorator.netherLavaPerChunk = 20;
|
||||||
customBiomeDecorator.smolderingGrassPerChunk = 2;
|
customBiomeDecorator.smolderingGrassPerChunk = 2;
|
||||||
customBiomeDecorator.gravesPerChunk = 1;
|
customBiomeDecorator.gravesPerChunk = 1;
|
||||||
|
customBiomeDecorator.burningBlossomsPerChunk = 4;
|
||||||
customBiomeDecorator.generateAsh = true;
|
customBiomeDecorator.generateAsh = true;
|
||||||
spawnableMonsterList.clear();
|
spawnableMonsterList.clear();
|
||||||
spawnableCreatureList.clear();
|
spawnableCreatureList.clear();
|
||||||
|
|
206
common/biomesoplenty/blocks/BlockBOPFlower2.java
Normal file
206
common/biomesoplenty/blocks/BlockBOPFlower2.java
Normal file
|
@ -0,0 +1,206 @@
|
||||||
|
package biomesoplenty.blocks;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.block.BlockFlower;
|
||||||
|
import net.minecraft.block.material.Material;
|
||||||
|
import net.minecraft.client.renderer.texture.IconRegister;
|
||||||
|
import net.minecraft.creativetab.CreativeTabs;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.util.Icon;
|
||||||
|
import net.minecraft.world.IBlockAccess;
|
||||||
|
import net.minecraft.world.World;
|
||||||
|
import biomesoplenty.BiomesOPlenty;
|
||||||
|
import biomesoplenty.api.Blocks;
|
||||||
|
import cpw.mods.fml.relauncher.Side;
|
||||||
|
import cpw.mods.fml.relauncher.SideOnly;
|
||||||
|
|
||||||
|
public class BlockBOPFlower2 extends BlockFlower
|
||||||
|
{
|
||||||
|
private static final String[] plants2 = new String[] {"hibiscus", "lilyofthevalley", "burningblossom"};
|
||||||
|
private Icon[] textures;
|
||||||
|
|
||||||
|
protected BlockBOPFlower2(int blockID, Material material)
|
||||||
|
{
|
||||||
|
super(blockID, material);
|
||||||
|
this.setTickRandomly(true);
|
||||||
|
float var4 = 0.2F;
|
||||||
|
this.setBlockBounds(0.5F - var4, 0.0F, 0.5F - var4, 0.5F + var4, var4 * 3.0F, 0.5F + var4);
|
||||||
|
this.setCreativeTab(BiomesOPlenty.tabBiomesOPlenty);
|
||||||
|
}
|
||||||
|
|
||||||
|
public BlockBOPFlower2(int blockID)
|
||||||
|
{
|
||||||
|
this(blockID, Material.plants);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void registerIcons(IconRegister iconRegister)
|
||||||
|
{
|
||||||
|
textures = new Icon[plants2.length];
|
||||||
|
|
||||||
|
for (int i = 0; i < plants2.length; ++i) {
|
||||||
|
textures[i] = iconRegister.registerIcon("biomesoplenty:" + plants2[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Icon getIcon(int side, int meta)
|
||||||
|
{
|
||||||
|
if (meta < 0 || meta >= textures.length) {
|
||||||
|
meta = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return textures[meta];
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getRenderType()
|
||||||
|
{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getLightValue(IBlockAccess world, int x, int y, int z)
|
||||||
|
{
|
||||||
|
int meta = world.getBlockMetadata(x, y, z);
|
||||||
|
if (meta == 2)
|
||||||
|
return 9;
|
||||||
|
else
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setBlockBoundsBasedOnState(IBlockAccess world, int par2, int par3, int par4)
|
||||||
|
{
|
||||||
|
int meta = world.getBlockMetadata(par2, par3, par4);
|
||||||
|
|
||||||
|
switch (meta)
|
||||||
|
{
|
||||||
|
default:
|
||||||
|
this.setBlockBounds(0.1F, 0.0F, 0.1F, 0.9F, 0.8F, 0.9F);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A randomly called display update to be able to add particles or other items for display
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void randomDisplayTick(World par1World, int par2, int par3, int par4, Random par5Random)
|
||||||
|
{
|
||||||
|
super.randomDisplayTick(par1World, par2, par3, par4, par5Random);
|
||||||
|
int meta = par1World.getBlockMetadata(par2, par3, par4);
|
||||||
|
if (meta == 2)
|
||||||
|
{
|
||||||
|
if (par5Random.nextInt(2) == 0)
|
||||||
|
{
|
||||||
|
par1World.spawnParticle("smoke", par2 + par5Random.nextFloat(), par3 + par5Random.nextFloat(), par4 + par5Random.nextFloat(), 0.0D, 0.0D, 0.0D);
|
||||||
|
}
|
||||||
|
if (par5Random.nextInt(4) == 0)
|
||||||
|
{
|
||||||
|
par1World.spawnParticle("flame", par2 + par5Random.nextFloat(), par3 + par5Random.nextFloat(), par4 + par5Random.nextFloat(), 0.0D, 0.0D, 0.0D);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@SideOnly(Side.CLIENT)
|
||||||
|
@SuppressWarnings({ "rawtypes", "unchecked" })
|
||||||
|
public void getSubBlocks(int blockID, CreativeTabs creativeTabs, List list) {
|
||||||
|
for (int i = 0; i < plants2.length; ++i)
|
||||||
|
{
|
||||||
|
list.add(new ItemStack(blockID, 1, i));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean canThisPlantGrowOnThisBlockID(int id)
|
||||||
|
{
|
||||||
|
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.tilledField.blockID || id == Block.netherrack.blockID || id == Blocks.longGrass.get().blockID;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected boolean canThisPlantGrowOnThisBlockID(int id, int metadata)
|
||||||
|
{
|
||||||
|
if (metadata == 2) // Burning Blossom
|
||||||
|
return id == Block.netherrack.blockID;
|
||||||
|
else
|
||||||
|
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.tilledField.blockID || id == Blocks.longGrass.get().blockID;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canPlaceBlockOnSide(World world, int x, int y, int z, int side, ItemStack itemStack)
|
||||||
|
{
|
||||||
|
int id = world.getBlockId(x, y - 1, z);
|
||||||
|
int meta = itemStack.getItemDamage();
|
||||||
|
//boolean sky = world.getFullBlockLightValue(x, y, z) >= 8 || world.canBlockSeeTheSky(x, y, z);
|
||||||
|
|
||||||
|
if (itemStack.itemID == blockID) {
|
||||||
|
switch (meta)
|
||||||
|
{
|
||||||
|
case 2: // Burning Blossom
|
||||||
|
return id == Block.netherrack.blockID;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return id == Block.grass.blockID || id == Block.dirt.blockID || id == Block.tilledField.blockID || id == Blocks.longGrass.get().blockID;
|
||||||
|
}
|
||||||
|
} else
|
||||||
|
return this.canPlaceBlockOnSide(world, x, y, z, side);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNeighborBlockChange(World world, int x, int y, int z, int neighborID)
|
||||||
|
{
|
||||||
|
//super.onNeighborBlockChange(world, x, y, z, neighborID);
|
||||||
|
this.checkFlowerChange(world, x, y, z);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getDamageValue(World world, int x, int y, int z)
|
||||||
|
{
|
||||||
|
int meta = world.getBlockMetadata(x, y, z);
|
||||||
|
|
||||||
|
return meta;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int damageDropped(int meta)
|
||||||
|
{
|
||||||
|
return meta & 15;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canBlockStay(World world, int x, int y, int z)
|
||||||
|
{
|
||||||
|
int meta = world.getBlockMetadata(x, y, z);
|
||||||
|
|
||||||
|
if (world.getBlockId(x, y, z) != blockID)
|
||||||
|
{
|
||||||
|
if (meta == 2)
|
||||||
|
return this.canThisPlantGrowOnThisBlockID(world.getBlockId(x, y - 1, z));
|
||||||
|
else
|
||||||
|
return (world.getFullBlockLightValue(x, y, z) >= 8 || world.canBlockSeeTheSky(x, y, z)) && this.canThisPlantGrowOnThisBlockID(world.getBlockId(x, y - 1, z));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (meta == 2)
|
||||||
|
return this.canThisPlantGrowOnThisBlockID(world.getBlockId(x, y - 1, z), world.getBlockMetadata(x, y, z));
|
||||||
|
else
|
||||||
|
return (world.getFullBlockLightValue(x, y, z) >= 8 || world.canBlockSeeTheSky(x, y, z)) && this.canThisPlantGrowOnThisBlockID(world.getBlockId(x, y - 1, z), world.getBlockMetadata(x, y, z));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isBlockReplaceable(World world, int x, int y, int z)
|
||||||
|
{
|
||||||
|
//ItemStack itemstack = new ItemStack(Blocks.flowers.get(), 1, 10);
|
||||||
|
|
||||||
|
if (world.getBlockMetadata(x, y, z) == 10)
|
||||||
|
//if (!world.isRemote)
|
||||||
|
//world.spawnEntityInWorld(new EntityItem(world, x, y, z, itemstack));
|
||||||
|
return true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
|
@ -282,7 +282,10 @@ public class BOPBiomes {
|
||||||
Biomes.timber = Optional.of((new BiomeGenTimber(BOPConfigurationIDs.timberID)).setColor(353825).setBiomeName("Timber").func_76733_a(5159473).setTemperatureRainfall(0.7F, 0.8F).setMinMaxHeight(0.3F, 0.4F));
|
Biomes.timber = Optional.of((new BiomeGenTimber(BOPConfigurationIDs.timberID)).setColor(353825).setBiomeName("Timber").func_76733_a(5159473).setTemperatureRainfall(0.7F, 0.8F).setMinMaxHeight(0.3F, 0.4F));
|
||||||
Biomes.timberThin = Optional.of((new BiomeGenTimberThin(BOPConfigurationIDs.timberThinID)).setColor(353825).setBiomeName("Thinned Timber").func_76733_a(5159473).setTemperatureRainfall(0.7F, 0.8F).setMinMaxHeight(0.3F, 0.4F));
|
Biomes.timberThin = Optional.of((new BiomeGenTimberThin(BOPConfigurationIDs.timberThinID)).setColor(353825).setBiomeName("Thinned Timber").func_76733_a(5159473).setTemperatureRainfall(0.7F, 0.8F).setMinMaxHeight(0.3F, 0.4F));
|
||||||
Biomes.tropicalRainforest = Optional.of((new BiomeGenTropicalRainforest(BOPConfigurationIDs.tropicalRainforestID)).setColor(9286496).setBiomeName("Tropical Rainforest").setTemperatureRainfall(1.2F, 0.9F).setMinMaxHeight(0.3F, 0.7F));
|
Biomes.tropicalRainforest = Optional.of((new BiomeGenTropicalRainforest(BOPConfigurationIDs.tropicalRainforestID)).setColor(9286496).setBiomeName("Tropical Rainforest").setTemperatureRainfall(1.2F, 0.9F).setMinMaxHeight(0.3F, 0.7F));
|
||||||
Biomes.tropics = Optional.of((new BiomeGenTropics(BOPConfigurationIDs.tropicsID)).setColor(9286496).setBiomeName("Tropics").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 1.5F));
|
|
||||||
|
Biomes.tropics = Optional.of((new BiomeGenTropics(BOPConfigurationIDs.tropicsID)).setColor(9286496).setBiomeName("Tropics").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.1F, 0.5F));
|
||||||
|
Biomes.tropicsMountain = Optional.of((new BiomeGenTropics(BOPConfigurationIDs.tropicsMountainID)).setColor(9286496).setBiomeName("Tropics Mountain").setTemperatureRainfall(2.0F, 2.0F).setMinMaxHeight(0.5F, 1.1F));
|
||||||
|
|
||||||
Biomes.tundra = Optional.of((new BiomeGenTundra(BOPConfigurationIDs.tundraID)).setColor(14090235).setBiomeName("Tundra").setTemperatureRainfall(0.2F, 0.8F).setMinMaxHeight(0.1F, 0.3F));
|
Biomes.tundra = Optional.of((new BiomeGenTundra(BOPConfigurationIDs.tundraID)).setColor(14090235).setBiomeName("Tundra").setTemperatureRainfall(0.2F, 0.8F).setMinMaxHeight(0.1F, 0.3F));
|
||||||
Biomes.volcano = Optional.of((new BiomeGenVolcano(BOPConfigurationIDs.volcanoID)).setColor(9286496).setBiomeName("Volcano").setDisableRain().setMinMaxHeight(0.6F, 0.9F).setTemperatureRainfall(2.0F, 0.05F));
|
Biomes.volcano = Optional.of((new BiomeGenVolcano(BOPConfigurationIDs.volcanoID)).setColor(9286496).setBiomeName("Volcano").setDisableRain().setMinMaxHeight(0.6F, 0.9F).setTemperatureRainfall(2.0F, 0.05F));
|
||||||
Biomes.wasteland = Optional.of((new BiomeGenWasteland(BOPConfigurationIDs.wastelandID)).setColor(16421912).setBiomeName("Wasteland").setDisableRain().setTemperatureRainfall(2.0F, 0.05F).setMinMaxHeight(0.3F, 0.4F));
|
Biomes.wasteland = Optional.of((new BiomeGenWasteland(BOPConfigurationIDs.wastelandID)).setColor(16421912).setBiomeName("Wasteland").setDisableRain().setTemperatureRainfall(2.0F, 0.05F).setMinMaxHeight(0.3F, 0.4F));
|
||||||
|
@ -426,7 +429,10 @@ public class BOPBiomes {
|
||||||
BiomeDictionary.registerBiomeType(Biomes.timberThin.get(), Type.FOREST);
|
BiomeDictionary.registerBiomeType(Biomes.timberThin.get(), Type.FOREST);
|
||||||
|
|
||||||
BiomeDictionary.registerBiomeType(Biomes.tropicalRainforest.get(), Type.JUNGLE);
|
BiomeDictionary.registerBiomeType(Biomes.tropicalRainforest.get(), Type.JUNGLE);
|
||||||
|
|
||||||
BiomeDictionary.registerBiomeType(Biomes.tropics.get(), Type.JUNGLE, Type.WATER);
|
BiomeDictionary.registerBiomeType(Biomes.tropics.get(), Type.JUNGLE, Type.WATER);
|
||||||
|
BiomeDictionary.registerBiomeType(Biomes.tropicsMountain.get(), Type.JUNGLE, Type.WATER);
|
||||||
|
|
||||||
BiomeDictionary.registerBiomeType(Biomes.tundra.get(), Type.FROZEN, Type.WASTELAND);
|
BiomeDictionary.registerBiomeType(Biomes.tundra.get(), Type.FROZEN, Type.WASTELAND);
|
||||||
BiomeDictionary.registerBiomeType(Biomes.volcano.get(), Type.WASTELAND, Type.MOUNTAIN);
|
BiomeDictionary.registerBiomeType(Biomes.volcano.get(), Type.WASTELAND, Type.MOUNTAIN);
|
||||||
BiomeDictionary.registerBiomeType(Biomes.wasteland.get(), Type.WASTELAND);
|
BiomeDictionary.registerBiomeType(Biomes.wasteland.get(), Type.WASTELAND);
|
||||||
|
|
|
@ -13,6 +13,7 @@ import biomesoplenty.blocks.BlockBOPColorizedLeaves;
|
||||||
import biomesoplenty.blocks.BlockBOPColorizedSapling;
|
import biomesoplenty.blocks.BlockBOPColorizedSapling;
|
||||||
import biomesoplenty.blocks.BlockBOPCoral;
|
import biomesoplenty.blocks.BlockBOPCoral;
|
||||||
import biomesoplenty.blocks.BlockBOPFlower;
|
import biomesoplenty.blocks.BlockBOPFlower;
|
||||||
|
import biomesoplenty.blocks.BlockBOPFlower2;
|
||||||
import biomesoplenty.blocks.BlockBOPFoliage;
|
import biomesoplenty.blocks.BlockBOPFoliage;
|
||||||
import biomesoplenty.blocks.BlockBOPGeneric;
|
import biomesoplenty.blocks.BlockBOPGeneric;
|
||||||
import biomesoplenty.blocks.BlockBOPGeneric.BlockType;
|
import biomesoplenty.blocks.BlockBOPGeneric.BlockType;
|
||||||
|
@ -56,6 +57,7 @@ import biomesoplenty.itemblocks.ItemBlockColorizedLeaves;
|
||||||
import biomesoplenty.itemblocks.ItemBlockColorizedSapling;
|
import biomesoplenty.itemblocks.ItemBlockColorizedSapling;
|
||||||
import biomesoplenty.itemblocks.ItemBlockCoral;
|
import biomesoplenty.itemblocks.ItemBlockCoral;
|
||||||
import biomesoplenty.itemblocks.ItemBlockFlower;
|
import biomesoplenty.itemblocks.ItemBlockFlower;
|
||||||
|
import biomesoplenty.itemblocks.ItemBlockFlower2;
|
||||||
import biomesoplenty.itemblocks.ItemBlockFoliage;
|
import biomesoplenty.itemblocks.ItemBlockFoliage;
|
||||||
import biomesoplenty.itemblocks.ItemBlockGlass;
|
import biomesoplenty.itemblocks.ItemBlockGlass;
|
||||||
import biomesoplenty.itemblocks.ItemBlockGrass;
|
import biomesoplenty.itemblocks.ItemBlockGrass;
|
||||||
|
@ -128,6 +130,7 @@ public class BOPBlocks
|
||||||
Blocks.ash = Optional.of((new BlockAsh(BOPConfigurationIDs.ashID)).setHardness(0.4F).setStepSound(Block.soundSandFootstep).setUnlocalizedName("bop.ash"));
|
Blocks.ash = Optional.of((new BlockAsh(BOPConfigurationIDs.ashID)).setHardness(0.4F).setStepSound(Block.soundSandFootstep).setUnlocalizedName("bop.ash"));
|
||||||
Blocks.plants = Optional.of((new BlockBOPPlant(BOPConfigurationIDs.plantsID)).setUnlocalizedName("bop.plants"));
|
Blocks.plants = Optional.of((new BlockBOPPlant(BOPConfigurationIDs.plantsID)).setUnlocalizedName("bop.plants"));
|
||||||
Blocks.flowers = Optional.of((new BlockBOPFlower(BOPConfigurationIDs.flowersID)).setHardness(0.0F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("bop.flowers"));
|
Blocks.flowers = Optional.of((new BlockBOPFlower(BOPConfigurationIDs.flowersID)).setHardness(0.0F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("bop.flowers"));
|
||||||
|
Blocks.flowers2 = Optional.of((new BlockBOPFlower2(BOPConfigurationIDs.flowers2ID)).setHardness(0.0F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("bop.flowers2"));
|
||||||
Blocks.mushrooms = Optional.of((new BlockBOPMushroom(BOPConfigurationIDs.mushroomsID)).setHardness(0.0F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("bop.mushrooms"));
|
Blocks.mushrooms = Optional.of((new BlockBOPMushroom(BOPConfigurationIDs.mushroomsID)).setHardness(0.0F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("bop.mushrooms"));
|
||||||
Blocks.coral = Optional.of((new BlockBOPCoral(BOPConfigurationIDs.coralID)).setHardness(0.0F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("bop.coral"));
|
Blocks.coral = Optional.of((new BlockBOPCoral(BOPConfigurationIDs.coralID)).setHardness(0.0F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("bop.coral"));
|
||||||
Blocks.willow = Optional.of((new BlockWillow(BOPConfigurationIDs.willowID)).setHardness(0.2F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("bop.willow"));
|
Blocks.willow = Optional.of((new BlockWillow(BOPConfigurationIDs.willowID)).setHardness(0.2F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("bop.willow"));
|
||||||
|
@ -215,6 +218,7 @@ public class BOPBlocks
|
||||||
GameRegistry.registerBlock(Blocks.ash.get(), "bop.ash");
|
GameRegistry.registerBlock(Blocks.ash.get(), "bop.ash");
|
||||||
GameRegistry.registerBlock(Blocks.plants.get(), ItemBlockPlant.class, "bop.plants");
|
GameRegistry.registerBlock(Blocks.plants.get(), ItemBlockPlant.class, "bop.plants");
|
||||||
GameRegistry.registerBlock(Blocks.flowers.get(), ItemBlockFlower.class, "bop.flowers");
|
GameRegistry.registerBlock(Blocks.flowers.get(), ItemBlockFlower.class, "bop.flowers");
|
||||||
|
GameRegistry.registerBlock(Blocks.flowers2.get(), ItemBlockFlower2.class, "bop.flowers2");
|
||||||
GameRegistry.registerBlock(Blocks.mushrooms.get(), ItemBlockMushroom.class, "bop.mushrooms");
|
GameRegistry.registerBlock(Blocks.mushrooms.get(), ItemBlockMushroom.class, "bop.mushrooms");
|
||||||
GameRegistry.registerBlock(Blocks.coral.get(), ItemBlockCoral.class, "bop.coral");
|
GameRegistry.registerBlock(Blocks.coral.get(), ItemBlockCoral.class, "bop.coral");
|
||||||
GameRegistry.registerBlock(Blocks.willow.get(), ItemBOPWillow.class, "bop.willow");
|
GameRegistry.registerBlock(Blocks.willow.get(), ItemBOPWillow.class, "bop.willow");
|
||||||
|
|
|
@ -31,6 +31,7 @@ public class BOPConfigurationIDs
|
||||||
|
|
||||||
public static int plantsID;
|
public static int plantsID;
|
||||||
public static int flowersID;
|
public static int flowersID;
|
||||||
|
public static int flowers2ID;
|
||||||
public static int mushroomsID;
|
public static int mushroomsID;
|
||||||
public static int coralID;
|
public static int coralID;
|
||||||
public static int willowID;
|
public static int willowID;
|
||||||
|
@ -261,6 +262,7 @@ public class BOPConfigurationIDs
|
||||||
public static int timberThinID;
|
public static int timberThinID;
|
||||||
public static int tropicalRainforestID;
|
public static int tropicalRainforestID;
|
||||||
public static int tropicsID;
|
public static int tropicsID;
|
||||||
|
public static int tropicsMountainID;
|
||||||
public static int tundraID;
|
public static int tundraID;
|
||||||
public static int volcanoID;
|
public static int volcanoID;
|
||||||
public static int wastelandID;
|
public static int wastelandID;
|
||||||
|
@ -397,6 +399,8 @@ public class BOPConfigurationIDs
|
||||||
|
|
||||||
leavesFruit2ID = config.getBlock("Fruit Leaf Block 2 ID", 1982, null).getInt();
|
leavesFruit2ID = config.getBlock("Fruit Leaf Block 2 ID", 1982, null).getInt();
|
||||||
|
|
||||||
|
flowers2ID = config.getBlock("Flower 2 ID", 1983, null).getInt();
|
||||||
|
|
||||||
// Get Item ID's
|
// Get Item ID's
|
||||||
foodID = config.getItem("Food ID", 21003, null).getInt();
|
foodID = config.getItem("Food ID", 21003, null).getInt();
|
||||||
|
|
||||||
|
@ -467,6 +471,7 @@ public class BOPConfigurationIDs
|
||||||
|
|
||||||
//23-79 ExtraBiomesXL
|
//23-79 ExtraBiomesXL
|
||||||
|
|
||||||
|
tropicsMountainID = config.get("Biome IDs", "Tropics Mountain (Sub-Biome) ID", 32).getInt();
|
||||||
autumnHillsID = config.get("Biome IDs", "Autumn Hills ID", 33).getInt();
|
autumnHillsID = config.get("Biome IDs", "Autumn Hills ID", 33).getInt();
|
||||||
overgrownGreensID = config.get("Biome IDs", "Overgrown Greens ID", 34).getInt();
|
overgrownGreensID = config.get("Biome IDs", "Overgrown Greens ID", 34).getInt();
|
||||||
forestHillsNewID = config.get("Biome IDs", "Forest Hills (Sub-Biome) ID", 35).getInt();
|
forestHillsNewID = config.get("Biome IDs", "Forest Hills (Sub-Biome) ID", 35).getInt();
|
||||||
|
|
|
@ -85,6 +85,7 @@ public class ForestryIntegration
|
||||||
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.oasisID);
|
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.oasisID);
|
||||||
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.rainforestID);
|
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.rainforestID);
|
||||||
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.tropicsID);
|
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.tropicsID);
|
||||||
|
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.tropicsMountainID);
|
||||||
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.woodlandID);
|
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.woodlandID);
|
||||||
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.jungleNewID);
|
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.jungleNewID);
|
||||||
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.jungleHillsNewID);
|
EnumTemperature.warmBiomeIds.add(BOPConfigurationIDs.jungleHillsNewID);
|
||||||
|
@ -98,6 +99,7 @@ public class ForestryIntegration
|
||||||
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.oasisID);
|
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.oasisID);
|
||||||
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.rainforestID);
|
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.rainforestID);
|
||||||
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.tropicsID);
|
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.tropicsID);
|
||||||
|
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.tropicsMountainID);
|
||||||
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.woodlandID);
|
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.woodlandID);
|
||||||
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.jungleNewID);
|
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.jungleNewID);
|
||||||
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.jungleHillsNewID);
|
EnumHumidity.dampBiomeIds.add(BOPConfigurationIDs.jungleHillsNewID);
|
||||||
|
|
|
@ -223,6 +223,10 @@ public class ThaumcraftIntegration {
|
||||||
ThaumcraftApi.registerObjectTag(getBID("rainbowflower"), getBMeta("rainbowflower"), (new AspectList()).add(Aspect.PLANT, 1).add(Aspect.PLANT, 1).add(Aspect.LIGHT, 1).add(Aspect.MAGIC, 1));
|
ThaumcraftApi.registerObjectTag(getBID("rainbowflower"), getBMeta("rainbowflower"), (new AspectList()).add(Aspect.PLANT, 1).add(Aspect.PLANT, 1).add(Aspect.LIGHT, 1).add(Aspect.MAGIC, 1));
|
||||||
ThaumcraftApi.registerObjectTag(getBID("sunflower"), getBMeta("sunflower"), (new AspectList()).add(Aspect.PLANT, 1).add(Aspect.PLANT, 1).add(Aspect.LIGHT, 1));
|
ThaumcraftApi.registerObjectTag(getBID("sunflower"), getBMeta("sunflower"), (new AspectList()).add(Aspect.PLANT, 1).add(Aspect.PLANT, 1).add(Aspect.LIGHT, 1));
|
||||||
|
|
||||||
|
ThaumcraftApi.registerObjectTag(getBID("hibiscus"), getBMeta("hibiscus"), (new AspectList()).add(Aspect.PLANT, 4));
|
||||||
|
ThaumcraftApi.registerObjectTag(getBID("lilyofthevalley"), getBMeta("lilyofthevalley"), (new AspectList()).add(Aspect.PLANT, 4).add(Aspect.POISON, 1));
|
||||||
|
ThaumcraftApi.registerObjectTag(getBID("burningblossom"), getBMeta("burningblossom"), (new AspectList()).add(Aspect.PLANT, 4).add(Aspect.FIRE, 2));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int getBID(String name) {
|
private static int getBID(String name) {
|
||||||
|
|
118
common/biomesoplenty/itemblocks/ItemBlockFlower2.java
Normal file
118
common/biomesoplenty/itemblocks/ItemBlockFlower2.java
Normal file
|
@ -0,0 +1,118 @@
|
||||||
|
package biomesoplenty.itemblocks;
|
||||||
|
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.client.renderer.texture.IconRegister;
|
||||||
|
import net.minecraft.entity.Entity;
|
||||||
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
import net.minecraft.item.EnumAction;
|
||||||
|
import net.minecraft.item.ItemBlock;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.util.Icon;
|
||||||
|
import net.minecraft.util.Vec3;
|
||||||
|
import net.minecraft.world.World;
|
||||||
|
import biomesoplenty.BiomesOPlenty;
|
||||||
|
import cpw.mods.fml.relauncher.Side;
|
||||||
|
import cpw.mods.fml.relauncher.SideOnly;
|
||||||
|
|
||||||
|
public class ItemBlockFlower2 extends ItemBlock
|
||||||
|
{
|
||||||
|
private static final String[] plants = new String[] {"hibiscus", "lilyofthevalley", "burningblossom"};
|
||||||
|
@SideOnly(Side.CLIENT)
|
||||||
|
private Icon[] textures;
|
||||||
|
|
||||||
|
public ItemBlockFlower2(int par1)
|
||||||
|
{
|
||||||
|
super(par1);
|
||||||
|
setMaxDamage(0);
|
||||||
|
setHasSubtypes(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getUnlocalizedName(ItemStack itemStack)
|
||||||
|
{
|
||||||
|
int meta = itemStack.getItemDamage();
|
||||||
|
if (meta < 0 || meta >= plants.length) {
|
||||||
|
meta = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return super.getUnlocalizedName() + "." + plants[meta];
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Icon getIconFromDamage(int meta)
|
||||||
|
{
|
||||||
|
return Block.blocksList[itemID].getIcon(0, meta);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@SideOnly(Side.CLIENT)
|
||||||
|
public boolean isFull3D()
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onItemUse(ItemStack itemStack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ)
|
||||||
|
{
|
||||||
|
int id = world.getBlockId(x, y, z);
|
||||||
|
|
||||||
|
if (id == Block.snow.blockID && (world.getBlockMetadata(x, y, z) & 7) < 1) {
|
||||||
|
side = 1;
|
||||||
|
} else if (!Block.blocksList[id].isBlockReplaceable(world, x, y, z))
|
||||||
|
{
|
||||||
|
if (side == 0) {
|
||||||
|
--y;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (side == 1) {
|
||||||
|
++y;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (side == 2) {
|
||||||
|
--z;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (side == 3) {
|
||||||
|
++z;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (side == 4) {
|
||||||
|
--x;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (side == 5) {
|
||||||
|
++x;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!player.canPlayerEdit(x, y, z, side, itemStack))
|
||||||
|
return false;
|
||||||
|
else if (itemStack.stackSize == 0)
|
||||||
|
return false;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (world.canPlaceEntityOnSide(this.getBlockID(), x, y, z, false, side, (Entity)null, itemStack))
|
||||||
|
{
|
||||||
|
Block block = Block.blocksList[this.getBlockID()];
|
||||||
|
int j1 = block.onBlockPlaced(world, x, y, z, side, hitX, hitY, hitZ, 0);
|
||||||
|
|
||||||
|
if (world.setBlock(x, y, z, this.getBlockID(), itemStack.getItemDamage(), 3))
|
||||||
|
{
|
||||||
|
|
||||||
|
if (world.getBlockId(x, y, z) == this.getBlockID())
|
||||||
|
{
|
||||||
|
Block.blocksList[this.getBlockID()].onBlockPlacedBy(world, x, y, z, player, itemStack);
|
||||||
|
Block.blocksList[this.getBlockID()].onPostBlockPlaced(world, x, y, z, j1);
|
||||||
|
}
|
||||||
|
|
||||||
|
world.playSoundEffect(x + 0.5F, y + 0.5F, z + 0.5F, block.stepSound.getPlaceSound(), (block.stepSound.getVolume() + 1.0F) / 2.0F, block.stepSound.getPitch() * 0.8F);
|
||||||
|
--itemStack.stackSize;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -40,6 +40,7 @@ public class BiomeLayerSub extends BiomeLayer
|
||||||
if (k1 == Biomes.seasonalForest.get().biomeID && nextInt(2) == 0) { l1 = Biomes.seasonalSpruceForest.get().biomeID; }
|
if (k1 == Biomes.seasonalForest.get().biomeID && nextInt(2) == 0) { l1 = Biomes.seasonalSpruceForest.get().biomeID; }
|
||||||
if (k1 == Biomes.field.get().biomeID && nextInt(2) == 0) { l1 = Biomes.fieldForest.get().biomeID; }
|
if (k1 == Biomes.field.get().biomeID && nextInt(2) == 0) { l1 = Biomes.fieldForest.get().biomeID; }
|
||||||
if (k1 == Biomes.savanna.get().biomeID && nextInt(4) == 0) { l1 = Biomes.savannaPlateau.get().biomeID; }
|
if (k1 == Biomes.savanna.get().biomeID && nextInt(4) == 0) { l1 = Biomes.savannaPlateau.get().biomeID; }
|
||||||
|
if (k1 == Biomes.tropics.get().biomeID && nextInt(3) == 0) { l1 = Biomes.tropicsMountain.get().biomeID; }
|
||||||
|
|
||||||
if (k1 == Biomes.forestNew.get().biomeID && nextInt(3) == 0) { l1 = Biomes.forestHillsNew.get().biomeID; }
|
if (k1 == Biomes.forestNew.get().biomeID && nextInt(3) == 0) { l1 = Biomes.forestHillsNew.get().biomeID; }
|
||||||
if (k1 == Biomes.taigaNew.get().biomeID && nextInt(3) == 0) { l1 = Biomes.taigaHillsNew.get().biomeID; }
|
if (k1 == Biomes.taigaNew.get().biomeID && nextInt(3) == 0) { l1 = Biomes.taigaHillsNew.get().biomeID; }
|
||||||
|
|
|
@ -54,6 +54,10 @@
|
||||||
<entry key="tile.bop.flowers.sunflowertop.name">Sunflower</entry>
|
<entry key="tile.bop.flowers.sunflowertop.name">Sunflower</entry>
|
||||||
<entry key="tile.bop.flowers.dandelion.name">White Dandelion</entry>
|
<entry key="tile.bop.flowers.dandelion.name">White Dandelion</entry>
|
||||||
|
|
||||||
|
<entry key="tile.bop.flowers2.hibiscus.name">Pink Hibiscus</entry>
|
||||||
|
<entry key="tile.bop.flowers2.lilyofthevalley.name">Lily of the Valley</entry>
|
||||||
|
<entry key="tile.bop.flowers2.burningblossom.name">Burning Blossom</entry>
|
||||||
|
|
||||||
<entry key="tile.bop.foliage.algae.name">Algae</entry>
|
<entry key="tile.bop.foliage.algae.name">Algae</entry>
|
||||||
<entry key="tile.bop.foliage.shortgrass.name">Short Grass</entry>
|
<entry key="tile.bop.foliage.shortgrass.name">Short Grass</entry>
|
||||||
<entry key="tile.bop.foliage.mediumgrass.name">Medium Grass</entry>
|
<entry key="tile.bop.foliage.mediumgrass.name">Medium Grass</entry>
|
||||||
|
|
BIN
resources/assets/biomesoplenty/textures/blocks/hibiscus.png
Normal file
BIN
resources/assets/biomesoplenty/textures/blocks/hibiscus.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 351 B |
Binary file not shown.
After Width: | Height: | Size: 461 B |
Loading…
Reference in a new issue