Finished ID usage reduction.
Renamed texture files to be more adequate to in-game names. Added the possibility of having different texture for heart of every log.
|
@ -70,12 +70,13 @@ public class Blocks
|
|||
public static Optional<? extends Block> petals = Optional.absent();
|
||||
public static Optional<? extends Block> bamboo = Optional.absent();
|
||||
|
||||
public static Optional<? extends Block> amethystBlock = Optional.absent();
|
||||
// public static Optional<? extends Block> amethystBlock = Optional.absent();
|
||||
public static Optional<? extends Block> amethystOre = Optional.absent();
|
||||
// public static Optional<? extends Block> bambooThatching = Optional.absent();
|
||||
public static Optional<? extends Block> mudBrick = Optional.absent();
|
||||
public static Optional<? extends Block> smolderingGrass = Optional.absent();
|
||||
// public static Optional<? extends Block> smolderingGrass = Optional.absent();
|
||||
// public static Optional<? extends Block> quicksand = Optional.absent();
|
||||
// public static Optional<? extends Block> grass = Optional.absent();
|
||||
|
||||
public static Optional<? extends Block> promisedPortal = Optional.absent();
|
||||
|
||||
|
|
|
@ -332,7 +332,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator
|
|||
this.clayInStoneGen = new WorldGenMinable(Block.blockClay.blockID, 32);
|
||||
this.quagmireGen = new WorldGenQuagmire(Block.grass.blockID, 48);
|
||||
this.canyonGen = new WorldGenCanyon(Blocks.redRock.get().blockID, 48);
|
||||
this.smolderingGrassGen = new WorldGenSmolderingGrass(Blocks.smolderingGrass.get().blockID, 32);
|
||||
this.smolderingGrassGen = new WorldGenSmolderingGrass(Blocks.holyGrass.get().blockID, 1, 32);
|
||||
this.driedDirtInSandGen = new WorldGenDriedDirt(Blocks.driedDirt.get().blockID, 32);
|
||||
this.coalGen = new WorldGenMinable(Block.oreCoal.blockID, 16);
|
||||
this.ironGen = new WorldGenMinable(Block.oreIron.blockID, 8);
|
||||
|
|
148
src/minecraft/biomesoplenty/blocks/BlockBOPAmethyst.java
Normal file
|
@ -0,0 +1,148 @@
|
|||
package biomesoplenty.blocks;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.Icon;
|
||||
import net.minecraft.util.MathHelper;
|
||||
import net.minecraft.world.World;
|
||||
import biomesoplenty.BiomesOPlenty;
|
||||
import biomesoplenty.api.Items;
|
||||
|
||||
public class BlockBOPAmethyst extends Block
|
||||
{
|
||||
private static final String[] types = new String[] {"amethystore", "amethystblock"};
|
||||
private Icon[] textures;
|
||||
|
||||
public BlockBOPAmethyst(int par1, Material par2Material)
|
||||
{
|
||||
super(par1, par2Material);
|
||||
this.setCreativeTab(BiomesOPlenty.tabBiomesOPlenty);
|
||||
setStepSound(Block.soundStoneFootstep);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerIcons(IconRegister iconRegister)
|
||||
{
|
||||
textures = new Icon[types.length];
|
||||
|
||||
for (int i = 0; i < types.length; ++i)
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:"+types[i]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getIcon(int side, int meta)
|
||||
{
|
||||
if (meta < 0 || meta >= textures.length)
|
||||
meta = 0;
|
||||
|
||||
return textures[meta];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getDamageValue(World world, int x, int y, int z) {
|
||||
return world.getBlockMetadata(x, y, z);
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings({ "rawtypes", "unchecked" })
|
||||
public void getSubBlocks(int blockID, CreativeTabs creativeTabs, List list) {
|
||||
for (int i = 0; i < types.length; ++i)
|
||||
list.add(new ItemStack(blockID, 1, i));
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getBlockHardness(World world, int x, int y, int z)
|
||||
{
|
||||
int meta = world.getBlockMetadata(x, y, z);
|
||||
float hardness = this.blockHardness;
|
||||
|
||||
switch (meta)
|
||||
{
|
||||
case 0:
|
||||
hardness = 3.0F;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
hardness = 5.0F;
|
||||
break;
|
||||
}
|
||||
|
||||
return hardness;
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getExplosionResistance(Entity par1Entity, World world, int x, int y, int z, double explosionX, double explosionY, double explosionZ)
|
||||
{
|
||||
int meta = world.getBlockMetadata(x, y, z);
|
||||
float resistance = this.blockResistance;
|
||||
|
||||
switch (meta)
|
||||
{
|
||||
case 0:
|
||||
resistance = 5.0F;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
resistance = 10.0F;
|
||||
break;
|
||||
}
|
||||
|
||||
return resistance / 5.0F;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int idDropped(int meta, Random par2Random, int par3)
|
||||
{
|
||||
return meta == 0 ? Items.miscItems.get().itemID : this.blockID;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int damageDropped(int meta)
|
||||
{
|
||||
return meta == 0 ? 2 : meta;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int quantityDropped(int meta, int fortune, Random random)
|
||||
{
|
||||
if (meta == 0)
|
||||
return quantityDroppedWithBonus(fortune, random);
|
||||
else
|
||||
return quantityDropped(random);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int quantityDroppedWithBonus(int bonus, Random par2Random)
|
||||
{
|
||||
if (bonus > 0 && this.blockID != this.idDropped(0, par2Random, bonus))
|
||||
{
|
||||
int rnd = par2Random.nextInt(bonus + 2) - 1;
|
||||
|
||||
if (rnd < 0)
|
||||
rnd = 0;
|
||||
|
||||
return (1 + par2Random.nextInt(2)) * (rnd + 1);
|
||||
}
|
||||
else
|
||||
return (1 + par2Random.nextInt(2));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dropBlockAsItemWithChance(World world, int par2, int par3, int par4, int par5, float par6, int par7)
|
||||
{
|
||||
super.dropBlockAsItemWithChance(world, par2, par3, par4, par5, par6, par7);
|
||||
|
||||
if (this.idDropped(par5, world.rand, par7) != this.blockID)
|
||||
{
|
||||
int var8 = MathHelper.getRandomIntegerInRange(world.rand, 1, 4);
|
||||
this.dropXpOnBlockBreak(world, par2, par3, par4, var8);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -45,8 +45,8 @@ public class BlockBOPAppleLeaves extends BlockLeavesBase implements IShearable
|
|||
|
||||
for (int i = 0; i < 4; ++i)
|
||||
{
|
||||
textures[0][i] = iconRegister.registerIcon("BiomesOPlenty:appleleaves" + i + "_fancy");
|
||||
textures[1][i] = iconRegister.registerIcon("BiomesOPlenty:appleleaves" + i + "_fast");
|
||||
textures[0][i] = iconRegister.registerIcon("BiomesOPlenty:leaves_apple" + i + "_fancy");
|
||||
textures[1][i] = iconRegister.registerIcon("BiomesOPlenty:leaves_apple" + i + "_fast");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -44,8 +44,8 @@ public class BlockBOPColorizedLeaves extends BlockLeavesBase implements IShearab
|
|||
|
||||
for (int i = 0; i < leaves.length; ++i)
|
||||
{
|
||||
textures[0][i] = iconRegister.registerIcon("BiomesOPlenty:" + leaves[i] + "leaves1");
|
||||
textures[1][i] = iconRegister.registerIcon("BiomesOPlenty:" + leaves[i] + "leaves2");
|
||||
textures[0][i] = iconRegister.registerIcon("BiomesOPlenty:leaves_" + leaves[i] + "_fancy");
|
||||
textures[1][i] = iconRegister.registerIcon("BiomesOPlenty:leaves_" + leaves[i] + "_fast");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -41,7 +41,7 @@ public class BlockBOPColorizedSapling extends BlockSapling
|
|||
textures = new Icon[saplings.length];
|
||||
|
||||
for (int i = 0; i < saplings.length; ++i)
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:" + saplings[i] + "sapling");
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:sapling_" + saplings[i]);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ import cpw.mods.fml.relauncher.SideOnly;
|
|||
|
||||
public class BlockBOPFlower extends BlockFlower
|
||||
{
|
||||
private static final String[] plants = new String[] {"tinyflower", "swampflower", "deadbloom", "glowflower", "hydrangea", "orangeflower", "pinkflower", "purpleflower", "violet", "whiteflower", "toadstool", "cactus"};
|
||||
private static final String[] plants = new String[] {"clover", "swampflower", "deadbloom", "glowflower", "hydrangea", "daisy", "tulip", "wildflower", "violet", "anemone", "toadstool", "cactus"};
|
||||
private Icon[] textures;
|
||||
|
||||
protected BlockBOPFlower(int blockID, Material material)
|
||||
|
|
|
@ -1,23 +1,16 @@
|
|||
package biomesoplenty.blocks;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.util.Icon;
|
||||
import net.minecraft.util.MathHelper;
|
||||
import net.minecraft.world.World;
|
||||
import biomesoplenty.BiomesOPlenty;
|
||||
import biomesoplenty.api.Items;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
public class BlockBOPGeneric extends Block
|
||||
{
|
||||
public enum BlockType
|
||||
{
|
||||
ASH_STONE, HARD_SAND, HARD_DIRT, HARD_ICE, HOLY_STONE, AMETHYST_ORE, AMETHYST_BLOCK, 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;
|
||||
}
|
||||
|
||||
private Icon texture;
|
||||
|
@ -30,15 +23,7 @@ public class BlockBOPGeneric extends Block
|
|||
this.setCreativeTab(BiomesOPlenty.tabBiomesOPlenty);
|
||||
|
||||
switch (type)
|
||||
{
|
||||
case AMETHYST_BLOCK:
|
||||
setHardness(5.0F).setResistance(10.0F).setStepSound(Block.soundMetalFootstep).setUnlocalizedName("amethystBlock");
|
||||
break;
|
||||
|
||||
case AMETHYST_ORE:
|
||||
setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundStoneFootstep).setUnlocalizedName("amethystOre");
|
||||
break;
|
||||
|
||||
{
|
||||
case ASH_STONE:
|
||||
setHardness(1.0F).setStepSound(Block.soundStoneFootstep).setUnlocalizedName("ashStone");
|
||||
break;
|
||||
|
@ -84,15 +69,7 @@ public class BlockBOPGeneric extends Block
|
|||
public void registerIcons(IconRegister iconRegister)
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
case AMETHYST_BLOCK:
|
||||
texture = iconRegister.registerIcon("BiomesOPlenty:amethystblock");
|
||||
break;
|
||||
|
||||
case AMETHYST_ORE:
|
||||
texture = iconRegister.registerIcon("BiomesOPlenty:amethystore");
|
||||
break;
|
||||
|
||||
{
|
||||
case ASH_STONE:
|
||||
texture = iconRegister.registerIcon("BiomesOPlenty:ashstone");
|
||||
break;
|
||||
|
@ -139,50 +116,4 @@ public class BlockBOPGeneric extends Block
|
|||
{
|
||||
return texture;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int idDropped(int par1, Random par2Random, int par3)
|
||||
{
|
||||
return type == BlockType.AMETHYST_ORE ? Items.miscItems.get().itemID : this.blockID;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int damageDropped(int meta)
|
||||
{
|
||||
return type == BlockType.AMETHYST_ORE ? 2 : 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int quantityDropped(Random par1Random)
|
||||
{
|
||||
return type == BlockType.AMETHYST_ORE ? 1 + par1Random.nextInt(2) : 1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int quantityDroppedWithBonus(int bonus, Random par2Random)
|
||||
{
|
||||
if (bonus > 0 && this.blockID != this.idDropped(0, par2Random, bonus))
|
||||
{
|
||||
int rnd = par2Random.nextInt(bonus + 2) - 1;
|
||||
|
||||
if (rnd < 0)
|
||||
rnd = 0;
|
||||
|
||||
return this.quantityDropped(par2Random) * (rnd + 1);
|
||||
}
|
||||
else
|
||||
return this.quantityDropped(par2Random);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dropBlockAsItemWithChance(World world, int par2, int par3, int par4, int par5, float par6, int par7)
|
||||
{
|
||||
super.dropBlockAsItemWithChance(world, par2, par3, par4, par5, par6, par7);
|
||||
|
||||
if (this.idDropped(par5, world.rand, par7) != this.blockID)
|
||||
{
|
||||
int var8 = MathHelper.getRandomIntegerInRange(world.rand, 1, 4);
|
||||
this.dropXpOnBlockBreak(world, par2, par3, par4, var8);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
185
src/minecraft/biomesoplenty/blocks/BlockBOPGrass.java
Normal file
|
@ -0,0 +1,185 @@
|
|||
package biomesoplenty.blocks;
|
||||
|
||||
import static net.minecraftforge.common.ForgeDirection.UP;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.util.Icon;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.WorldProviderEnd;
|
||||
import net.minecraftforge.common.ForgeDirection;
|
||||
import biomesoplenty.BiomesOPlenty;
|
||||
import biomesoplenty.api.Blocks;
|
||||
|
||||
public class BlockBOPGrass extends Block
|
||||
{
|
||||
private Icon[][] blockIcon = new Icon[2][6];
|
||||
|
||||
public BlockBOPGrass(int par1)
|
||||
{
|
||||
super(par1, Material.grass);
|
||||
this.setTickRandomly(true);
|
||||
this.setCreativeTab(BiomesOPlenty.tabBiomesOPlenty);
|
||||
setStepSound(Block.soundGrassFootstep);
|
||||
setHardness(0.6F);
|
||||
setLightValue(0.25F);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerIcons(IconRegister iconRegister)
|
||||
{
|
||||
this.blockIcon[0][0] = iconRegister.registerIcon("BiomesOPlenty:holystone");
|
||||
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");
|
||||
this.blockIcon[0][4] = iconRegister.registerIcon("BiomesOPlenty:holygrass_side");
|
||||
this.blockIcon[0][5] = iconRegister.registerIcon("BiomesOPlenty:holygrass_side");
|
||||
|
||||
this.blockIcon[1][0] = iconRegister.registerIcon("BiomesOPlenty:smolderinggrass_bottom");
|
||||
this.blockIcon[1][1] = iconRegister.registerIcon("BiomesOPlenty:smolderinggrass_top");
|
||||
this.blockIcon[1][2] = iconRegister.registerIcon("BiomesOPlenty:smolderinggrass_side");
|
||||
this.blockIcon[1][3] = iconRegister.registerIcon("BiomesOPlenty:smolderinggrass_side");
|
||||
this.blockIcon[1][4] = iconRegister.registerIcon("BiomesOPlenty:smolderinggrass_side");
|
||||
this.blockIcon[1][5] = iconRegister.registerIcon("BiomesOPlenty:smolderinggrass_side");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getIcon(int side, int meta)
|
||||
{
|
||||
return blockIcon[meta][side];
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings({ "rawtypes", "unchecked" })
|
||||
public void getSubBlocks(int blockID, CreativeTabs creativeTabs, List list) {
|
||||
for (int i = 0; i < 2; ++i)
|
||||
list.add(new ItemStack(blockID, 1, i));
|
||||
}
|
||||
|
||||
@Override
|
||||
public int damageDropped(int meta)
|
||||
{
|
||||
return meta;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isFireSource(World world, int x, int y, int z, int metadata, ForgeDirection side)
|
||||
{
|
||||
if (metadata == 0)
|
||||
{
|
||||
if (blockID == Block.netherrack.blockID && side == UP)
|
||||
return true;
|
||||
|
||||
if (blockID == this.blockID && side == UP)
|
||||
return true;
|
||||
|
||||
if ((world.provider instanceof WorldProviderEnd) && blockID == Block.bedrock.blockID && side == UP)
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int onBlockPlaced(World world, int par2, int par3, int par4, int par5, float par6, float par7, float par8, int meta)
|
||||
{
|
||||
if (meta == 0)
|
||||
if (world.provider.isHellWorld)
|
||||
{
|
||||
world.playSound(par2, par3, par4, "mob.ghast.death", 20.0F, 0.95F + (float)Math.random() * 0.1F, true);
|
||||
|
||||
for (int l = 0; l < 8; ++l)
|
||||
{
|
||||
world.spawnParticle("flame", (double)par2 + Math.random(), (double)par3 + Math.random(), (double)par4 + Math.random(), 0.0D, 0.0D, 0.0D);
|
||||
world.spawnParticle("smoke", (double)par2 + Math.random(), (double)par3 + Math.random(), (double)par4 + Math.random(), 0.0D, 0.0D, 0.0D);
|
||||
}
|
||||
}
|
||||
return meta;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void randomDisplayTick(World world, int x, int y, int z, Random random)
|
||||
{
|
||||
if (!world.isRemote)
|
||||
return;
|
||||
|
||||
if (world.getBlockMetadata(x, y, z) == 1)
|
||||
{
|
||||
if (random.nextInt(4) == 0)
|
||||
world.spawnParticle("smoke", (double)((float)x + random.nextFloat()), (double)((float)y + 1.1F), (double)((float)z + random.nextFloat()), 0.0D, 0.0D, 0.0D);
|
||||
|
||||
if (random.nextInt(6) == 0)
|
||||
world.spawnParticle("flame", (double)((float)x + random.nextFloat()), (double)((float)y + 1.1F), (double)((float)z + random.nextFloat()), 0.0D, 0.0D, 0.0D);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateTick(World world, int x, int y, int z, Random random)
|
||||
{
|
||||
if (world.getBlockMetadata(x, y, z) == 0)
|
||||
{
|
||||
if (world.provider.isHellWorld)
|
||||
{
|
||||
world.setBlock(x, y + 1, z, Block.fire.blockID);
|
||||
world.setBlock(x, y, z, Blocks.holyGrass.get().blockID, 1, 2);
|
||||
}
|
||||
|
||||
if (!world.isRemote)
|
||||
{
|
||||
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);
|
||||
}
|
||||
else if (world.getBlockLightValue(x, y + 1, z) >= 9)
|
||||
{
|
||||
for (int var6 = 0; var6 < 4; ++var6)
|
||||
{
|
||||
int var7 = x + random.nextInt(3) - 1;
|
||||
int var8 = y + random.nextInt(5) - 3;
|
||||
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)
|
||||
{
|
||||
world.setBlock(var7, var8, var9, Blocks.holyGrass.get().blockID, 0, 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z)
|
||||
{
|
||||
if (world.getBlockMetadata(x, y, z) == 1)
|
||||
{
|
||||
float f = 0.02F;
|
||||
return AxisAlignedBB.getAABBPool().getAABB((double)x, (double)y, (double)z, (double)(x + 1), (double)((float)(y + 1) - f), (double)(z + 1));
|
||||
}
|
||||
|
||||
return super.getCollisionBoundingBoxFromPool(world, x, y, z);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onEntityCollidedWithBlock(World world, int x, int y, int z, Entity entity)
|
||||
{
|
||||
if (world.getBlockMetadata(x, y, z) == 1)
|
||||
entity.setFire(2);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int idDropped(int meta, Random par2Random, int par3)
|
||||
{
|
||||
return meta == 0 ? Blocks.holyStone.get().blockID : Block.dirt.blockID;
|
||||
}
|
||||
|
||||
}
|
|
@ -27,7 +27,7 @@ public class BlockBOPLeaves extends BlockLeavesBase implements IShearable
|
|||
}
|
||||
|
||||
//Autumn - Orange = Leaves 1, Origin - White = Leaves 2
|
||||
private static final String[] leaves = new String[] {"autumn", "bamboo", "blue", "dark", "dead", "fir", "holy", "orange", "origin", "pink", "red", "white"};
|
||||
private static final String[] leaves = new String[] {"yellowautumn", "bamboo", "magic", "dark", "dead", "fir", "holy", "orangeautumn", "origin", "pinkcherry", "maple", "whitecherry"};
|
||||
private Icon[][] textures;
|
||||
private final LeafCategory category;
|
||||
int[] adjacentTreeBlocks;
|
||||
|
@ -51,8 +51,8 @@ public class BlockBOPLeaves extends BlockLeavesBase implements IShearable
|
|||
|
||||
for (int i = 0; i < leaves.length; ++i)
|
||||
{
|
||||
textures[0][i] = iconRegister.registerIcon("BiomesOPlenty:" + leaves[i] + "leaves1");
|
||||
textures[1][i] = iconRegister.registerIcon("BiomesOPlenty:" + leaves[i] + "leaves2");
|
||||
textures[0][i] = iconRegister.registerIcon("BiomesOPlenty:leaves_" + leaves[i] + "_fancy");
|
||||
textures[1][i] = iconRegister.registerIcon("BiomesOPlenty:leaves_" + leaves[i] + "_fast");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -46,12 +46,12 @@ public class BlockBOPLog extends Block
|
|||
|
||||
for (int i = 0; i < types.length - 1; ++i)
|
||||
{
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:"+types[i]+"log");
|
||||
logHearts[i] = iconRegister.registerIcon("BiomesOPlenty:logTopBottum");
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:log_"+types[i]+"_side");
|
||||
logHearts[i] = iconRegister.registerIcon("BiomesOPlenty:log_"+types[i]+"_heart");
|
||||
}
|
||||
|
||||
textures[types.length - 1] = iconRegister.registerIcon("BiomesOPlenty:bigflowerstem");
|
||||
logHearts[types.length - 1] = iconRegister.registerIcon("BiomesOPlenty:stemTopBottum");
|
||||
textures[types.length - 1] = iconRegister.registerIcon("BiomesOPlenty:bigflowerstem_side");
|
||||
logHearts[types.length - 1] = iconRegister.registerIcon("BiomesOPlenty:bigflowerstem_heart");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -12,7 +12,7 @@ import biomesoplenty.BiomesOPlenty;
|
|||
|
||||
public class BlockBOPPlank extends Block
|
||||
{
|
||||
private static final String[] woodTypes = new String[] {"acaciaplank", "cherryplank", "darkplank", "firPlank", "holyplank", "magicplank", "mangroveplank", "palmplank", "redwoodplank", "willowplank", "bamboothatching"};
|
||||
private static final String[] woodTypes = new String[] {"plank_acacia", "plank_cherry", "plank_dark", "plank_fir", "plank_holy", "plank_magic", "plank_mangrove", "plank_palm", "plank_redwood", "plank_willow", "bamboothatching"};
|
||||
private Icon[] textures;
|
||||
|
||||
public BlockBOPPlank(int blockID)
|
||||
|
|
|
@ -30,7 +30,7 @@ import biomesoplenty.worldgen.WorldGenTaiga9;
|
|||
|
||||
public class BlockBOPSapling extends BlockSapling
|
||||
{
|
||||
private static final String[] saplings = new String[] {"apple", "yellow", "bamboo", "magic", "dark", "brown", "fir", "holy", "orange", "origin", "pink", "red", "white"};
|
||||
private static final String[] saplings = new String[] {"apple", "yellowautumn", "bamboo", "magic", "dark", "dead", "fir", "holy", "orangeautumn", "origin", "pinkcherry", "maple", "whitecherry"};
|
||||
private Icon[] textures;
|
||||
private static final int TYPES = 15;
|
||||
|
||||
|
@ -48,7 +48,7 @@ public class BlockBOPSapling extends BlockSapling
|
|||
textures = new Icon[saplings.length];
|
||||
|
||||
for (int i = 0; i < saplings.length; ++i)
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:" + saplings[i] + "sapling");
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:sapling_" + saplings[i]);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -61,7 +61,7 @@ public class BlockBOPSlab extends BlockHalfSlab
|
|||
textures = new Icon[woodTypes.length];
|
||||
|
||||
for (int i = 0; i < woodTypes.length; ++i)
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:"+woodTypes[i]+"plank");
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:plank_"+woodTypes[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ public class BlockBOPStairs extends BlockStairs
|
|||
|
||||
for (int i = 0; i < types.length; ++i)
|
||||
if (i < types.length - 3)
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:"+types[i]+"plank");
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:plank_"+types[i]);
|
||||
else
|
||||
textures[i] = iconRegister.registerIcon("BiomesOPlenty:"+types[i]);
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@ import net.minecraft.item.ItemStack;
|
|||
import net.minecraftforge.common.MinecraftForge;
|
||||
import biomesoplenty.api.Blocks;
|
||||
import biomesoplenty.blocks.BlockAsh;
|
||||
import biomesoplenty.blocks.BlockBOPAmethyst;
|
||||
import biomesoplenty.blocks.BlockBOPAppleLeaves;
|
||||
import biomesoplenty.blocks.BlockBOPColorizedLeaves;
|
||||
import biomesoplenty.blocks.BlockBOPColorizedSapling;
|
||||
|
@ -14,6 +15,7 @@ import biomesoplenty.blocks.BlockBOPFlower;
|
|||
import biomesoplenty.blocks.BlockBOPFoliage;
|
||||
import biomesoplenty.blocks.BlockBOPGeneric;
|
||||
import biomesoplenty.blocks.BlockBOPGeneric.BlockType;
|
||||
import biomesoplenty.blocks.BlockBOPGrass;
|
||||
import biomesoplenty.blocks.BlockBOPLeaves;
|
||||
import biomesoplenty.blocks.BlockBOPLeaves.LeafCategory;
|
||||
import biomesoplenty.blocks.BlockBOPLog;
|
||||
|
@ -28,21 +30,20 @@ import biomesoplenty.blocks.BlockBOPSlab.SlabCategory;
|
|||
import biomesoplenty.blocks.BlockBOPStairs;
|
||||
import biomesoplenty.blocks.BlockBOPStairs.Category;
|
||||
import biomesoplenty.blocks.BlockBamboo;
|
||||
import biomesoplenty.blocks.BlockHolyGrass;
|
||||
import biomesoplenty.blocks.BlockMoss;
|
||||
import biomesoplenty.blocks.BlockMud;
|
||||
import biomesoplenty.blocks.BlockOriginGrass;
|
||||
import biomesoplenty.blocks.BlockPromisedPortal;
|
||||
import biomesoplenty.blocks.BlockQuicksand;
|
||||
import biomesoplenty.blocks.BlockSmolderingGrass;
|
||||
import biomesoplenty.blocks.BlockTreeMoss;
|
||||
import biomesoplenty.blocks.BlockWillow;
|
||||
import biomesoplenty.items.ItemBOPAmethyst;
|
||||
import biomesoplenty.items.ItemBOPAppleLeaves;
|
||||
import biomesoplenty.items.ItemBOPBamboo;
|
||||
import biomesoplenty.items.ItemBOPColorizedLeaves;
|
||||
import biomesoplenty.items.ItemBOPColorizedSapling;
|
||||
import biomesoplenty.items.ItemBOPFlower;
|
||||
import biomesoplenty.items.ItemBOPFoliage;
|
||||
import biomesoplenty.items.ItemBOPGrass;
|
||||
import biomesoplenty.items.ItemBOPLeaves;
|
||||
import biomesoplenty.items.ItemBOPLog;
|
||||
import biomesoplenty.items.ItemBOPMoss;
|
||||
|
@ -72,17 +73,16 @@ public class BOPBlocks {
|
|||
Blocks.shearBlockIds.put(Blocks.leavesColorized.get().blockID, 15.0F);
|
||||
Blocks.shearBlockIds.put(Blocks.leavesFruit.get().blockID, 15.0F);
|
||||
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.smolderingGrass.get(), "shovel", 0);
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.holyGrass.get(), 1, "shovel", 0);
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.mud.get(), "shovel", 0);
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.ash.get(), "shovel", 0);
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.originGrass.get(), "shovel", 0);
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.hardSand.get(), "shovel", 0);
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.holyGrass.get(), "pickaxe", 0);
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.holyGrass.get(), 0, "pickaxe", 0);
|
||||
// MinecraftForge.setBlockHarvestLevel(Blocks.quicksand.get(), "shovel", 0);
|
||||
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.driedDirt.get(), "pickaxe", 0);
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.amethystOre.get(), "pickaxe", 3);
|
||||
MinecraftForge.setBlockHarvestLevel(Blocks.amethystBlock.get(), "pickaxe", 3);
|
||||
|
||||
addGrassPlants();
|
||||
|
||||
|
@ -122,16 +122,18 @@ public class BOPBlocks {
|
|||
Blocks.redBricksStairs = Optional.of((new BlockBOPStairs(BOPConfiguration.redBrickStairsID, Blocks.redRock.get(), Category.RED_BRICKS)).setUnlocalizedName("redBricksStairs"));
|
||||
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((BlockHolyGrass)(new BlockHolyGrass(BOPConfiguration.holyGrassID)).setHardness(1.0F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("holyGrass"));
|
||||
Blocks.holyStone = Optional.of(new BlockBOPGeneric(BOPConfiguration.holyStoneID, Material.rock, BlockType.HOLY_STONE));
|
||||
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.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));
|
||||
// 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.amethystOre = Optional.of(new BlockBOPAmethyst(BOPConfiguration.amethystOreID, Material.rock).setUnlocalizedName("amethystOre"));
|
||||
// Blocks.bambooThatching = Optional.of(new BlockBOPGeneric(BOPConfiguration.bambooThatchingID, Material.wood, BlockType.BAMBOO_THATCHING));
|
||||
Blocks.moss = Optional.of((new BlockMoss(BOPConfiguration.mossID)).setHardness(0.2F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("moss"));
|
||||
Blocks.smolderingGrass = Optional.of((BlockSmolderingGrass)(new BlockSmolderingGrass(BOPConfiguration.smolderingGrassID)).setHardness(0.6F).setLightValue(0.25F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("smolderingGrass"));
|
||||
// Blocks.smolderingGrass = Optional.of((BlockSmolderingGrass)(new BlockSmolderingGrass(BOPConfiguration.smolderingGrassID)).setHardness(0.6F).setLightValue(0.25F).setStepSound(Block.soundGrassFootstep).setUnlocalizedName("smolderingGrass"));
|
||||
Blocks.cragRock = Optional.of(new BlockBOPGeneric(BOPConfiguration.cragRockID, Material.rock, BlockType.CRAG_ROCK));
|
||||
// Blocks.quicksand = Optional.of((new BlockQuicksand(BOPConfiguration.quicksandID)).setHardness(0.3F).setStepSound(Block.soundSandFootstep).setUnlocalizedName("quicksand"));
|
||||
// Blocks.grass = Optional.of(new BlockBOPGrass(3000).setUnlocalizedName("holyGrass"));
|
||||
|
||||
Blocks.planks = Optional.of((new BlockBOPPlank(BOPConfiguration.planksID)).setResistance(5.0F).setStepSound(Block.soundWoodFootstep).setUnlocalizedName("planks"));
|
||||
|
||||
|
@ -184,16 +186,18 @@ public class BOPBlocks {
|
|||
GameRegistry.registerBlock(Blocks.redBricksStairs.get(), "redBricksStairs");
|
||||
GameRegistry.registerBlock(Blocks.hardSand.get(), "hardSand");
|
||||
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.holyStone.get(), "holyStone");
|
||||
GameRegistry.registerBlock(Blocks.promisedPortal.get(), "promisedPortal");
|
||||
GameRegistry.registerBlock(Blocks.amethystOre.get(), "amethystOre");
|
||||
GameRegistry.registerBlock(Blocks.amethystBlock.get(), "amethystBlock");
|
||||
GameRegistry.registerBlock(Blocks.amethystOre.get(), ItemBOPAmethyst.class, "amethystOre");
|
||||
// GameRegistry.registerBlock(Blocks.amethystBlock.get(), "amethystBlock");
|
||||
// GameRegistry.registerBlock(Blocks.bambooThatching.get(), "bambooThatching");
|
||||
GameRegistry.registerBlock(Blocks.moss.get(), ItemBOPMoss.class, "moss");
|
||||
GameRegistry.registerBlock(Blocks.smolderingGrass.get(), "smolderingGrass");
|
||||
// GameRegistry.registerBlock(Blocks.smolderingGrass.get(), "smolderingGrass");
|
||||
GameRegistry.registerBlock(Blocks.cragRock.get(), "cragRock");
|
||||
// GameRegistry.registerBlock(Blocks.quicksand.get(), "quicksand");
|
||||
// GameRegistry.registerBlock(Blocks.amethyst.get(), ItemBOPAmethyst.class, "amethystOre1");
|
||||
|
||||
ItemBOPSlab.setSlabs(Blocks.stoneSingleSlab.get(), Blocks.stoneDoubleSlab.get());
|
||||
GameRegistry.registerBlock(Blocks.stoneDoubleSlab.get(), ItemBOPSlab.class, "stoneDoubleSlab");
|
||||
|
@ -230,7 +234,7 @@ public class BOPBlocks {
|
|||
LanguageRegistry.addName(Blocks.ash.get(), "Ash Block");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.plants.get(),1,0), "Dead Grass");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.plants.get(),1,1), "Desert Grass");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.flowers.get(),1,9), "Anenome");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.flowers.get(),1,9), "Anemone");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.flowers.get(),1,1), "Swampflower");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.flowers.get(),1,7), "Wildflower");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.flowers.get(),1,5), "Daisy");
|
||||
|
@ -301,17 +305,21 @@ public class BOPBlocks {
|
|||
LanguageRegistry.addName(Blocks.hardSand.get(), "Hard Sand");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.colorizedSaplings.get(),1,0), "Acacia Sapling");
|
||||
LanguageRegistry.addName(Blocks.hardDirt.get(), "Hard Dirt");
|
||||
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, 1), "Smoldering Grass");
|
||||
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");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.saplings.get(),1,7), "Holy Sapling");
|
||||
LanguageRegistry.addName(Blocks.amethystOre.get(), "Amethyst Ore");
|
||||
LanguageRegistry.addName(Blocks.amethystBlock.get(), "Block of Amethyst");
|
||||
// LanguageRegistry.addName(Blocks.amethystOre.get(), "Amethyst Ore");
|
||||
// LanguageRegistry.addName(Blocks.amethystBlock.get(), "Block of Amethyst");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.amethystOre.get(),1,0), "Amethyst Ore");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.amethystOre.get(),1,1), "Block of Amethyst");
|
||||
// LanguageRegistry.addName(Blocks.bambooThatching.get(), "Bamboo Thatching");
|
||||
LanguageRegistry.addName(Blocks.moss.get(), "Moss");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.foliage.get(),1,0), "Algae");
|
||||
LanguageRegistry.addName(Blocks.smolderingGrass.get(), "Smoldering Grass");
|
||||
// LanguageRegistry.addName(Blocks.smolderingGrass.get(), "Smoldering Grass");
|
||||
LanguageRegistry.addName(Blocks.cragRock.get(), "Crag Rock");
|
||||
// LanguageRegistry.addName(Blocks.quicksand.get(), "Quicksand");
|
||||
LanguageRegistry.addName(new ItemStack(Blocks.mud.get(), 1, 1), "Quicksand");
|
||||
|
|
|
@ -145,13 +145,13 @@ public class BOPConfiguration {
|
|||
|
||||
public static int promisedLandPortalID;
|
||||
public static int amethystOreID;
|
||||
public static int amethystBlockID;
|
||||
public static int bambooThatchingID;
|
||||
// public static int amethystBlockID;
|
||||
// public static int bambooThatchingID;
|
||||
|
||||
public static int mossID;
|
||||
public static int smolderingGrassID;
|
||||
// public static int smolderingGrassID;
|
||||
|
||||
public static int quicksandID;
|
||||
// public static int quicksandID;
|
||||
|
||||
public static int planksID;
|
||||
|
||||
|
@ -452,13 +452,13 @@ public class BOPConfiguration {
|
|||
|
||||
promisedLandPortalID = config.getBlock("Promised Land Portal ID", 1941, null).getInt();
|
||||
amethystOreID = config.getBlock("Amethyst Ore ID", 1942, null).getInt();
|
||||
amethystBlockID = config.getBlock("Block of Amethyst ID", 1943, null).getInt();
|
||||
bambooThatchingID = config.getBlock("Bamboo Thatching ID", 1944, null).getInt();
|
||||
// amethystBlockID = config.getBlock("Block of Amethyst ID", 1943, null).getInt();
|
||||
// bambooThatchingID = config.getBlock("Bamboo Thatching ID", 1944, null).getInt();
|
||||
|
||||
mossID = config.getBlock("Moss ID", 391, null).getInt();
|
||||
smolderingGrassID = config.getBlock("Smoldering Grass ID", 1945, null).getInt();
|
||||
// smolderingGrassID = config.getBlock("Smoldering Grass ID", 1945, null).getInt();
|
||||
|
||||
quicksandID = config.getBlock("Quicksand ID", 1946, null).getInt();
|
||||
// quicksandID = config.getBlock("Quicksand ID", 1946, null).getInt();
|
||||
|
||||
planksID = config.getBlock("Planks ID", 1947, null).getInt();
|
||||
|
||||
|
|
|
@ -108,7 +108,7 @@ public class BOPCrafting
|
|||
GameRegistry.addRecipe(new ItemStack(Block.cloth, 1, 0), new Object[] {"CCC", "CCC", "CCC", 'C', new ItemStack(Blocks.plants.get(), 1, 7)});
|
||||
GameRegistry.addRecipe(new ItemStack(Item.coal, 1), new Object[] {"AAA", "AAA", "AAA", 'A', new ItemStack(Items.miscItems.get(), 1, 1)});
|
||||
GameRegistry.addRecipe(new ItemStack(Blocks.mud.get(), 1), new Object[] {"MM", "MM", 'M', Items.mudball.get()});
|
||||
GameRegistry.addRecipe(new ItemStack(Blocks.amethystBlock.get(), 1), new Object[] {"AAA", "AAA", "AAA", 'A', new ItemStack(Items.miscItems.get(), 1, 2)});
|
||||
GameRegistry.addRecipe(new ItemStack(Blocks.amethystOre.get(), 1, 1), new Object[] {"AAA", "AAA", "AAA", 'A', new ItemStack(Items.miscItems.get(), 1, 2)});
|
||||
GameRegistry.addRecipe(new ItemStack(Blocks.ash.get(), 1), new Object[] {"AA", "AA", 'A', new ItemStack(Items.miscItems.get(), 1, 1)});
|
||||
GameRegistry.addRecipe(new ItemStack(Blocks.mudBrick.get(), 1), new Object[] {"MM", "MM", 'M', new ItemStack(Items.miscItems.get(), 1, 3)});
|
||||
// GameRegistry.addRecipe(new ItemStack(Blocks.planks.get(), 1, 10), new Object[] {"###", "###", "###", '#', Blocks.bamboo.get()});
|
||||
|
@ -143,13 +143,13 @@ public class BOPCrafting
|
|||
GameRegistry.addRecipe(new ItemStack(Items.ancientStaff.get(), 1, 1), new Object[] {"ISI", "ISI", " E ", 'I', Item.ingotIron, 'S', Block.whiteStone, 'E', Item.emerald});
|
||||
GameRegistry.addRecipe(new ItemStack(Items.ancientStaff.get(), 1, 2), new Object[] {"ISI", "IRI", "ISI", 'I', Item.ingotIron, 'S', Block.whiteStone, 'R', Item.redstone});
|
||||
GameRegistry.addRecipe(new ItemStack(Items.ancientStaff.get(), 1, 3), new Object[] {" N ", "IDI", "ISI", 'I', Item.ingotIron, 'S', Block.whiteStone, 'D', Item.diamond, 'N', Item.netherStar});
|
||||
GameRegistry.addRecipe(new ItemStack(Items.enderporter.get(), 1, 0), new Object[] {"IOI", "OAO", "IOI", 'I', Item.eyeOfEnder, 'O', Block.obsidian, 'A', Blocks.amethystBlock.get()});
|
||||
GameRegistry.addRecipe(new ItemStack(Items.enderporter.get(), 1, 0), new Object[] {"IOI", "OAO", "IOI", 'I', Item.eyeOfEnder, 'O', Block.obsidian, 'A', new ItemStack(Blocks.amethystOre.get(), 1, 1)});
|
||||
GameRegistry.addRecipe(new ItemStack(Items.bopDiscMud.get(), 1), new Object[] {" M ", "MDM", " M ", 'M', Items.mudball.get(), 'D', Items.bopDisc.get()});
|
||||
|
||||
GameRegistry.addRecipe(new ItemStack(Blocks.planks.get(), 1, 10), new Object[] {"##", "##", '#', Blocks.bamboo.get()});
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Blocks.bamboo.get(), 4), new Object[] {new ItemStack(Blocks.planks.get(), 1, 10)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.miscItems.get(), 9, 2), new Object[] {Blocks.amethystBlock.get()});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.miscItems.get(), 9, 2), new Object[] {new ItemStack(Blocks.amethystOre.get(), 1, 1)});
|
||||
|
||||
//Plants
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.shroomPowder.get(), 2), new Object[] {new ItemStack(Blocks.flowers.get(),1,10)});
|
||||
|
|
|
@ -88,7 +88,7 @@ public class BonemealUse
|
|||
}
|
||||
}
|
||||
}
|
||||
else if (event.ID == Blocks.holyGrass.get().blockID)
|
||||
else if (event.ID == Blocks.holyGrass.get().blockID && event.world.getBlockMetadata(event.X, event.Y, event.Z) == 0)
|
||||
{
|
||||
int var13 = event.X;
|
||||
int var14 = event.Y + 1;
|
||||
|
|
27
src/minecraft/biomesoplenty/items/ItemBOPAmethyst.java
Normal file
|
@ -0,0 +1,27 @@
|
|||
package biomesoplenty.items;
|
||||
|
||||
import net.minecraft.item.ItemBlock;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class ItemBOPAmethyst extends ItemBlock
|
||||
{
|
||||
private static final String[] types = new String[] {"amethystOre", "amethystBlock"};
|
||||
|
||||
public ItemBOPAmethyst(int par1)
|
||||
{
|
||||
super(par1);
|
||||
setMaxDamage(0);
|
||||
setHasSubtypes(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMetadata(int meta)
|
||||
{
|
||||
return meta;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getUnlocalizedName(ItemStack itemstack) {
|
||||
return types[itemstack.getItemDamage() & 15];
|
||||
}
|
||||
}
|
|
@ -10,7 +10,7 @@ import net.minecraft.world.World;
|
|||
|
||||
public class ItemBOPFlower extends ItemBlock
|
||||
{
|
||||
private static final String[] plants = new String[] {"tinyflower", "swampflower", "deadbloom", "glowflower", "hydrangea", "orangeflower", "pinkflower", "purpleflower", "violet", "whiteflower", "toadstool", "cactus"};
|
||||
private static final String[] plants = new String[] {"clover", "swampflower", "deadbloom", "glowflower", "hydrangea", "daisy", "tulip", "wildflower", "violet", "anemone", "toadstool", "cactus"};
|
||||
|
||||
public ItemBOPFlower(int par1)
|
||||
{
|
||||
|
|
27
src/minecraft/biomesoplenty/items/ItemBOPGrass.java
Normal file
|
@ -0,0 +1,27 @@
|
|||
package biomesoplenty.items;
|
||||
|
||||
import net.minecraft.item.ItemBlock;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class ItemBOPGrass extends ItemBlock
|
||||
{
|
||||
private static final String[] types = new String[] {"holyGrass", "smolderingGrass"};
|
||||
|
||||
public ItemBOPGrass(int par1)
|
||||
{
|
||||
super(par1);
|
||||
setMaxDamage(0);
|
||||
setHasSubtypes(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMetadata(int meta)
|
||||
{
|
||||
return meta;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getUnlocalizedName(ItemStack itemstack) {
|
||||
return types[itemstack.getItemDamage() & 15];
|
||||
}
|
||||
}
|
|
@ -7,7 +7,7 @@ import net.minecraft.util.Icon;
|
|||
|
||||
public class ItemBOPSapling extends ItemBlock
|
||||
{
|
||||
private static final String[] saplings = new String[] {"apple", "yellow", "bamboo", "magic", "dark", "brown", "fir", "holy", "orange", "origin", "pink", "red", "white"};
|
||||
private static final String[] saplings = new String[] {"apple", "yellowAutumn", "bamboo", "magic", "dark", "dead", "fir", "holy", "orangeAutumn", "origin", "pinkCherry", "maple", "whiteCherry"};
|
||||
private static final int MAX = 12;
|
||||
|
||||
public ItemBOPSapling(int par1)
|
||||
|
|
|
@ -448,7 +448,7 @@ public class WorldGenDeadTree3 extends WorldGenerator
|
|||
int[] var2 = new int[] {this.basePos[0], this.basePos[1] + this.heightLimit - 1, this.basePos[2]};
|
||||
int var3 = this.worldObj.getBlockId(this.basePos[0], this.basePos[1] - 1, this.basePos[2]);
|
||||
|
||||
if (var3 != 2 && var3 != 3 && var3 != Blocks.smolderingGrass.get().blockID && var3 != Blocks.ash.get().blockID)
|
||||
if (var3 != 2 && var3 != 3 && var3 != Blocks.holyGrass.get().blockID && var3 != Blocks.ash.get().blockID)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -76,7 +76,7 @@ public class WorldGenPromisedTree extends WorldGenerator
|
|||
|
||||
if ((var11 == Blocks.holyGrass.get().blockID) && par4 < 256 - var6 - 1)
|
||||
{
|
||||
this.setBlock(par1World, par3, par4 - 1, par5, Blocks.holyGrass.get().blockID);
|
||||
this.setBlockAndMetadata(par1World, par3, par4 - 1, par5, Blocks.holyGrass.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.setBlock(par1World, par3, par4 - 1, par5, Blocks.holyGrass.get().blockID);
|
||||
this.setBlockAndMetadata(par1World, par3, par4 - 1, par5, Blocks.holyGrass.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);
|
||||
var1.setBlock(var3 - 1, var4 - 1, var5, Blocks.holyGrass.get().blockID);
|
||||
var1.setBlock(var3, var4 - 1, var5 - 1, Blocks.holyGrass.get().blockID);
|
||||
var1.setBlock(var3 - 1, var4 - 1, var5 - 1, Blocks.holyGrass.get().blockID);
|
||||
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);
|
||||
var15 = var2.nextInt(2);
|
||||
int var16 = 1;
|
||||
boolean var17 = false;
|
||||
|
|
|
@ -16,11 +16,14 @@ public class WorldGenSmolderingGrass extends WorldGenerator
|
|||
|
||||
/** The number of blocks to generate. */
|
||||
private int numberOfBlocks;
|
||||
|
||||
private int blockMeta;
|
||||
|
||||
public WorldGenSmolderingGrass(int par1, int par2)
|
||||
public WorldGenSmolderingGrass(int par1, int meta, int par2)
|
||||
{
|
||||
this.minableBlockId = par1;
|
||||
this.numberOfBlocks = par2;
|
||||
this.blockMeta = meta;
|
||||
}
|
||||
|
||||
public boolean generate(World par1World, Random par2Random, int par3, int par4, int par5)
|
||||
|
@ -66,7 +69,7 @@ public class WorldGenSmolderingGrass extends WorldGenerator
|
|||
|
||||
if (var39 * var39 + var42 * var42 + var45 * var45 < 1.0D && par1World.getBlockId(var38, var41, var44) == Blocks.ash.get().blockID)
|
||||
{
|
||||
par1World.setBlock(var38, var41, var44, this.minableBlockId);
|
||||
par1World.setBlock(var38, var41, var44, this.minableBlockId, this.blockMeta, 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Before Width: | Height: | Size: 286 B After Width: | Height: | Size: 286 B |
Before Width: | Height: | Size: 628 B |
Before Width: | Height: | Size: 610 B |
Before Width: | Height: | Size: 598 B |
Before Width: | Height: | Size: 559 B After Width: | Height: | Size: 559 B |
Before Width: | Height: | Size: 533 B After Width: | Height: | Size: 533 B |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 238 B |
Before Width: | Height: | Size: 320 B After Width: | Height: | Size: 320 B |
Before Width: | Height: | Size: 628 B After Width: | Height: | Size: 628 B |
Before Width: | Height: | Size: 660 B After Width: | Height: | Size: 660 B |
Before Width: | Height: | Size: 664 B After Width: | Height: | Size: 664 B |
Before Width: | Height: | Size: 571 B After Width: | Height: | Size: 571 B |
Before Width: | Height: | Size: 642 B After Width: | Height: | Size: 642 B |
Before Width: | Height: | Size: 628 B After Width: | Height: | Size: 628 B |
Before Width: | Height: | Size: 598 B After Width: | Height: | Size: 598 B |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 642 B After Width: | Height: | Size: 642 B |
Before Width: | Height: | Size: 610 B After Width: | Height: | Size: 610 B |
Before Width: | Height: | Size: 612 B After Width: | Height: | Size: 612 B |
Before Width: | Height: | Size: 653 B After Width: | Height: | Size: 653 B |
Before Width: | Height: | Size: 653 B After Width: | Height: | Size: 653 B |
Before Width: | Height: | Size: 628 B After Width: | Height: | Size: 628 B |
Before Width: | Height: | Size: 602 B After Width: | Height: | Size: 602 B |
Before Width: | Height: | Size: 573 B After Width: | Height: | Size: 573 B |
Before Width: | Height: | Size: 500 B After Width: | Height: | Size: 500 B |
Before Width: | Height: | Size: 480 B After Width: | Height: | Size: 480 B |
Before Width: | Height: | Size: 732 B After Width: | Height: | Size: 732 B |
Before Width: | Height: | Size: 686 B After Width: | Height: | Size: 686 B |
Before Width: | Height: | Size: 622 B After Width: | Height: | Size: 622 B |
Before Width: | Height: | Size: 592 B After Width: | Height: | Size: 592 B |
Before Width: | Height: | Size: 561 B After Width: | Height: | Size: 561 B |
Before Width: | Height: | Size: 605 B After Width: | Height: | Size: 605 B |
Before Width: | Height: | Size: 562 B After Width: | Height: | Size: 562 B |
Before Width: | Height: | Size: 542 B After Width: | Height: | Size: 542 B |
Before Width: | Height: | Size: 591 B After Width: | Height: | Size: 591 B |
Before Width: | Height: | Size: 567 B After Width: | Height: | Size: 567 B |
Before Width: | Height: | Size: 669 B After Width: | Height: | Size: 669 B |
Before Width: | Height: | Size: 628 B After Width: | Height: | Size: 628 B |
Before Width: | Height: | Size: 589 B After Width: | Height: | Size: 589 B |
Before Width: | Height: | Size: 631 B After Width: | Height: | Size: 631 B |
Before Width: | Height: | Size: 629 B After Width: | Height: | Size: 629 B |
Before Width: | Height: | Size: 608 B After Width: | Height: | Size: 608 B |
Before Width: | Height: | Size: 604 B After Width: | Height: | Size: 604 B |
Before Width: | Height: | Size: 574 B After Width: | Height: | Size: 574 B |
Before Width: | Height: | Size: 618 B After Width: | Height: | Size: 618 B |
Before Width: | Height: | Size: 589 B After Width: | Height: | Size: 589 B |
Before Width: | Height: | Size: 488 B After Width: | Height: | Size: 488 B |
Before Width: | Height: | Size: 706 B After Width: | Height: | Size: 706 B |
Before Width: | Height: | Size: 627 B After Width: | Height: | Size: 627 B |
Before Width: | Height: | Size: 613 B After Width: | Height: | Size: 613 B |
Before Width: | Height: | Size: 544 B After Width: | Height: | Size: 544 B |
Before Width: | Height: | Size: 590 B After Width: | Height: | Size: 590 B |
After Width: | Height: | Size: 544 B |
Before Width: | Height: | Size: 586 B After Width: | Height: | Size: 586 B |
After Width: | Height: | Size: 544 B |
Before Width: | Height: | Size: 700 B After Width: | Height: | Size: 700 B |
After Width: | Height: | Size: 544 B |
Before Width: | Height: | Size: 747 B After Width: | Height: | Size: 747 B |
After Width: | Height: | Size: 544 B |
Before Width: | Height: | Size: 569 B After Width: | Height: | Size: 569 B |
After Width: | Height: | Size: 544 B |
Before Width: | Height: | Size: 621 B After Width: | Height: | Size: 621 B |
After Width: | Height: | Size: 544 B |
Before Width: | Height: | Size: 728 B After Width: | Height: | Size: 728 B |
After Width: | Height: | Size: 544 B |
Before Width: | Height: | Size: 774 B After Width: | Height: | Size: 774 B |
After Width: | Height: | Size: 544 B |
Before Width: | Height: | Size: 590 B After Width: | Height: | Size: 590 B |
After Width: | Height: | Size: 544 B |