Add mappings between wood types and doors, fences, gates and stairs

This commit is contained in:
Cheeserolls 2015-05-22 11:50:55 +01:00
parent 7d7917d757
commit 642e1e6e87
6 changed files with 162 additions and 266 deletions

View File

@ -8,9 +8,12 @@
package biomesoplenty.common.block;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
import biomesoplenty.api.block.IBOPBlock;
import biomesoplenty.api.block.BOPWoodEnums.AllWoods;
import net.minecraft.block.BlockDoor;
import net.minecraft.block.material.Material;
import net.minecraft.block.properties.IProperty;
@ -38,14 +41,31 @@ public class BlockBOPDoor extends BlockDoor implements IBOPBlock
public IProperty[] getNonRenderingProperties() { return new IProperty[] {POWERED}; }
@Override
public String getStateName(IBlockState state) {return "";}
// Map from woods to BlockBOPDoor instance and back
private static Map<AllWoods, BlockBOPDoor> variantToBlock = new HashMap<AllWoods, BlockBOPDoor>();
public static BlockBOPDoor getBlock(AllWoods wood)
{
return variantToBlock.get(wood);
}
protected AllWoods wood;
public AllWoods getWood()
{
return this.wood;
}
private Item doorItem;
public BlockBOPDoor()
public BlockBOPDoor(AllWoods wood)
{
super(Material.wood);
this.setHardness(3.0F);
this.setHarvestLevel("axe", 0);
this.wood = wood;
variantToBlock.put(wood, this);
}
public void setDoorItem(Item doorItem)

View File

@ -8,6 +8,10 @@
package biomesoplenty.common.block;
import java.util.HashMap;
import java.util.Map;
import biomesoplenty.api.block.BOPWoodEnums.AllWoods;
import biomesoplenty.api.block.IBOPBlock;
import biomesoplenty.common.item.ItemBOPBlock;
import net.minecraft.block.BlockFence;
@ -31,11 +35,25 @@ public class BlockBOPFence extends BlockFence implements IBOPBlock
@Override
public String getStateName(IBlockState state) {return "";}
// Map from woods to BlockBOPFence instance and back
private static Map<AllWoods, BlockBOPFence> variantToBlock = new HashMap<AllWoods, BlockBOPFence>();
public static BlockBOPFence getBlock(AllWoods wood)
{
return variantToBlock.get(wood);
}
protected AllWoods wood;
public AllWoods getWood()
{
return this.wood;
}
public BlockBOPFence()
public BlockBOPFence(AllWoods wood)
{
super(Material.wood);
this.setHarvestLevel("axe", 0);
this.wood = wood;
variantToBlock.put(wood, this);
}
}

View File

@ -8,7 +8,11 @@
package biomesoplenty.common.block;
import java.util.HashMap;
import java.util.Map;
import biomesoplenty.api.block.IBOPBlock;
import biomesoplenty.api.block.BOPWoodEnums.AllWoods;
import biomesoplenty.common.item.ItemBOPBlock;
import net.minecraft.block.BlockFenceGate;
import net.minecraft.block.properties.IProperty;
@ -30,12 +34,27 @@ public class BlockBOPFenceGate extends BlockFenceGate implements IBOPBlock
public IProperty[] getNonRenderingProperties() { return new IProperty[] {POWERED}; }
@Override
public String getStateName(IBlockState state) {return "";}
// Map from woods to BlockBOPFenceGate instance and back
private static Map<AllWoods, BlockBOPFenceGate> variantToBlock = new HashMap<AllWoods, BlockBOPFenceGate>();
public static BlockBOPFenceGate getBlock(AllWoods wood)
{
return variantToBlock.get(wood);
}
protected AllWoods wood;
public AllWoods getWood()
{
return this.wood;
}
public BlockBOPFenceGate()
public BlockBOPFenceGate(AllWoods wood)
{
super();
this.setHarvestLevel("axe", 0);
this.wood = wood;
variantToBlock.put(wood, this);
}
}

View File

@ -8,7 +8,11 @@
package biomesoplenty.common.block;
import java.util.HashMap;
import java.util.Map;
import biomesoplenty.api.block.IBOPBlock;
import biomesoplenty.api.block.BOPWoodEnums.AllWoods;
import biomesoplenty.common.item.ItemBOPBlock;
import net.minecraft.block.BlockStairs;
import net.minecraft.block.properties.IProperty;
@ -31,12 +35,26 @@ public class BlockBOPStairs extends BlockStairs implements IBOPBlock
@Override
public String getStateName(IBlockState state) {return "";}
public BlockBOPStairs(IBlockState modelState)
// Map from woods to BlockBOPStairs instance and back
private static Map<AllWoods, BlockBOPStairs> variantToBlock = new HashMap<AllWoods, BlockBOPStairs>();
public static BlockBOPStairs getBlock(AllWoods wood)
{
super(modelState);
return variantToBlock.get(wood);
}
protected AllWoods wood;
public AllWoods getWood()
{
return this.wood;
}
public BlockBOPStairs(AllWoods wood)
{
super(BlockBOPPlanks.paging.getVariantState(wood));
this.setHarvestLevel("axe", 0);
this.useNeighborBrightness = true;
this.wood = wood;
variantToBlock.put(wood, this);
}
}

View File

@ -115,68 +115,68 @@ public class ModBlocks
sapling_2 = registerBlock( BlockBOPSapling.paging.getBlock(2), "sapling_2");
// stairs have no variant metadata, use a new BlockBOPStairs instance for each (note there's no giant_flower_stairs or dead_stairs)
sacred_oak_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.SACRED_OAK)), "sacred_oak_stairs" );
cherry_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.CHERRY)), "cherry_stairs" );
dark_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.DARK)), "dark_stairs" );
fir_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.FIR)), "fir_stairs" );
ethereal_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.ETHEREAL)), "ethereal_stairs" );
magic_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.MAGIC)), "magic_stairs" );
mangrove_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.MANGROVE)), "mangrove_stairs" );
palm_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.PALM)), "palm_stairs" );
redwood_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.REDWOOD)), "redwood_stairs" );
willow_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.WILLOW)), "willow_stairs" );
pine_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.PINE)), "pine_stairs" );
hellbark_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.HELLBARK)), "hellbark_stairs" );
jacaranda_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.JACARANDA)), "jacaranda_stairs" );
mahogany_stairs = registerBlock( new BlockBOPStairs(BlockBOPPlanks.paging.getVariantState(AllWoods.MAHOGANY)), "mahogany_stairs" );
sacred_oak_stairs = registerBlock( new BlockBOPStairs(AllWoods.SACRED_OAK), "sacred_oak_stairs" );
cherry_stairs = registerBlock( new BlockBOPStairs(AllWoods.CHERRY), "cherry_stairs" );
dark_stairs = registerBlock( new BlockBOPStairs(AllWoods.DARK), "dark_stairs" );
fir_stairs = registerBlock( new BlockBOPStairs(AllWoods.FIR), "fir_stairs" );
ethereal_stairs = registerBlock( new BlockBOPStairs(AllWoods.ETHEREAL), "ethereal_stairs" );
magic_stairs = registerBlock( new BlockBOPStairs(AllWoods.MAGIC), "magic_stairs" );
mangrove_stairs = registerBlock( new BlockBOPStairs(AllWoods.MANGROVE), "mangrove_stairs" );
palm_stairs = registerBlock( new BlockBOPStairs(AllWoods.PALM), "palm_stairs" );
redwood_stairs = registerBlock( new BlockBOPStairs(AllWoods.REDWOOD), "redwood_stairs" );
willow_stairs = registerBlock( new BlockBOPStairs(AllWoods.WILLOW), "willow_stairs" );
pine_stairs = registerBlock( new BlockBOPStairs(AllWoods.PINE), "pine_stairs" );
hellbark_stairs = registerBlock( new BlockBOPStairs(AllWoods.HELLBARK), "hellbark_stairs" );
jacaranda_stairs = registerBlock( new BlockBOPStairs(AllWoods.JACARANDA), "jacaranda_stairs" );
mahogany_stairs = registerBlock( new BlockBOPStairs(AllWoods.MAHOGANY), "mahogany_stairs" );
// fences have no variant metadata, use a new BlockBOPFence instance for each (note there's no giant_flower_fence or dead_fence)
sacred_oak_fence = registerBlock( new BlockBOPFence(), "sacred_oak_fence" );
cherry_fence = registerBlock( new BlockBOPFence(), "cherry_fence" );
dark_fence = registerBlock( new BlockBOPFence(), "dark_fence" );
fir_fence = registerBlock( new BlockBOPFence(), "fir_fence" );
ethereal_fence = registerBlock( new BlockBOPFence(), "ethereal_fence" );
magic_fence = registerBlock( new BlockBOPFence(), "magic_fence" );
mangrove_fence = registerBlock( new BlockBOPFence(), "mangrove_fence" );
palm_fence = registerBlock( new BlockBOPFence(), "palm_fence" );
redwood_fence = registerBlock( new BlockBOPFence(), "redwood_fence" );
willow_fence = registerBlock( new BlockBOPFence(), "willow_fence" );
pine_fence = registerBlock( new BlockBOPFence(), "pine_fence" );
hellbark_fence = registerBlock( new BlockBOPFence(), "hellbark_fence" );
jacaranda_fence = registerBlock( new BlockBOPFence(), "jacaranda_fence" );
mahogany_fence = registerBlock( new BlockBOPFence(), "mahogany_fence" );
sacred_oak_fence = registerBlock( new BlockBOPFence(AllWoods.SACRED_OAK), "sacred_oak_fence" );
cherry_fence = registerBlock( new BlockBOPFence(AllWoods.CHERRY), "cherry_fence" );
dark_fence = registerBlock( new BlockBOPFence(AllWoods.DARK), "dark_fence" );
fir_fence = registerBlock( new BlockBOPFence(AllWoods.FIR), "fir_fence" );
ethereal_fence = registerBlock( new BlockBOPFence(AllWoods.ETHEREAL), "ethereal_fence" );
magic_fence = registerBlock( new BlockBOPFence(AllWoods.MAGIC), "magic_fence" );
mangrove_fence = registerBlock( new BlockBOPFence(AllWoods.MANGROVE), "mangrove_fence" );
palm_fence = registerBlock( new BlockBOPFence(AllWoods.PALM), "palm_fence" );
redwood_fence = registerBlock( new BlockBOPFence(AllWoods.REDWOOD), "redwood_fence" );
willow_fence = registerBlock( new BlockBOPFence(AllWoods.WILLOW), "willow_fence" );
pine_fence = registerBlock( new BlockBOPFence(AllWoods.PINE), "pine_fence" );
hellbark_fence = registerBlock( new BlockBOPFence(AllWoods.HELLBARK), "hellbark_fence" );
jacaranda_fence = registerBlock( new BlockBOPFence(AllWoods.JACARANDA), "jacaranda_fence" );
mahogany_fence = registerBlock( new BlockBOPFence(AllWoods.MAHOGANY), "mahogany_fence" );
// fence gates have no variant metadata, use a new BlockBOPFenceGate instance for each (note there's no giant_flower_fence_gate or dead_fence_gate)
sacred_oak_fence_gate = registerBlock( new BlockBOPFenceGate(), "sacred_oak_fence_gate" );
cherry_fence_gate = registerBlock( new BlockBOPFenceGate(), "cherry_fence_gate" );
dark_fence_gate = registerBlock( new BlockBOPFenceGate(), "dark_fence_gate" );
fir_fence_gate = registerBlock( new BlockBOPFenceGate(), "fir_fence_gate" );
ethereal_fence_gate = registerBlock( new BlockBOPFenceGate(), "ethereal_fence_gate" );
magic_fence_gate = registerBlock( new BlockBOPFenceGate(), "magic_fence_gate" );
mangrove_fence_gate = registerBlock( new BlockBOPFenceGate(), "mangrove_fence_gate" );
palm_fence_gate = registerBlock( new BlockBOPFenceGate(), "palm_fence_gate" );
redwood_fence_gate = registerBlock( new BlockBOPFenceGate(), "redwood_fence_gate" );
willow_fence_gate = registerBlock( new BlockBOPFenceGate(), "willow_fence_gate" );
pine_fence_gate = registerBlock( new BlockBOPFenceGate(), "pine_fence_gate" );
hellbark_fence_gate = registerBlock( new BlockBOPFenceGate(), "hellbark_fence_gate" );
jacaranda_fence_gate = registerBlock( new BlockBOPFenceGate(), "jacaranda_fence_gate" );
mahogany_fence_gate = registerBlock( new BlockBOPFenceGate(), "mahogany_fence_gate" );
sacred_oak_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.SACRED_OAK), "sacred_oak_fence_gate" );
cherry_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.CHERRY), "cherry_fence_gate" );
dark_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.DARK), "dark_fence_gate" );
fir_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.FIR), "fir_fence_gate" );
ethereal_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.ETHEREAL), "ethereal_fence_gate" );
magic_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.MAGIC), "magic_fence_gate" );
mangrove_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.MANGROVE), "mangrove_fence_gate" );
palm_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.PALM), "palm_fence_gate" );
redwood_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.REDWOOD), "redwood_fence_gate" );
willow_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.WILLOW), "willow_fence_gate" );
pine_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.PINE), "pine_fence_gate" );
hellbark_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.HELLBARK), "hellbark_fence_gate" );
jacaranda_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.JACARANDA), "jacaranda_fence_gate" );
mahogany_fence_gate = registerBlock( new BlockBOPFenceGate(AllWoods.MAHOGANY), "mahogany_fence_gate" );
// doors have no variant metadata, use a new BlockBOPDoor instance for each (note there's no giant_flower_door or dead_door)
sacred_oak_door = registerDoor( new BlockBOPDoor(), "sacred_oak_door", BOPItems.sacred_oak_door );
cherry_door = registerDoor( new BlockBOPDoor(), "cherry_door", BOPItems.cherry_door );
dark_door = registerDoor( new BlockBOPDoor(), "dark_door", BOPItems.dark_door );
fir_door = registerDoor( new BlockBOPDoor(), "fir_door", BOPItems.fir_door );
ethereal_door = registerDoor( new BlockBOPDoor(), "ethereal_door", BOPItems.ethereal_door );
magic_door = registerDoor( new BlockBOPDoor(), "magic_door", BOPItems.magic_door );
mangrove_door = registerDoor( new BlockBOPDoor(), "mangrove_door", BOPItems.mangrove_door );
palm_door = registerDoor( new BlockBOPDoor(), "palm_door", BOPItems.palm_door );
redwood_door = registerDoor( new BlockBOPDoor(), "redwood_door", BOPItems.redwood_door );
willow_door = registerDoor( new BlockBOPDoor(), "willow_door", BOPItems.willow_door );
pine_door = registerDoor( new BlockBOPDoor(), "pine_door", BOPItems.pine_door );
hellbark_door = registerDoor( new BlockBOPDoor(), "hellbark_door", BOPItems.hellbark_door );
jacaranda_door = registerDoor( new BlockBOPDoor(), "jacaranda_door", BOPItems.jacaranda_door );
mahogany_door = registerDoor( new BlockBOPDoor(), "mahogany_door", BOPItems.mahogany_door );
sacred_oak_door = registerDoor( new BlockBOPDoor(AllWoods.SACRED_OAK), "sacred_oak_door", BOPItems.sacred_oak_door );
cherry_door = registerDoor( new BlockBOPDoor(AllWoods.CHERRY), "cherry_door", BOPItems.cherry_door );
dark_door = registerDoor( new BlockBOPDoor(AllWoods.DARK), "dark_door", BOPItems.dark_door );
fir_door = registerDoor( new BlockBOPDoor(AllWoods.FIR), "fir_door", BOPItems.fir_door );
ethereal_door = registerDoor( new BlockBOPDoor(AllWoods.ETHEREAL), "ethereal_door", BOPItems.ethereal_door );
magic_door = registerDoor( new BlockBOPDoor(AllWoods.MAGIC), "magic_door", BOPItems.magic_door );
mangrove_door = registerDoor( new BlockBOPDoor(AllWoods.MANGROVE), "mangrove_door", BOPItems.mangrove_door );
palm_door = registerDoor( new BlockBOPDoor(AllWoods.PALM), "palm_door", BOPItems.palm_door );
redwood_door = registerDoor( new BlockBOPDoor(AllWoods.REDWOOD), "redwood_door", BOPItems.redwood_door );
willow_door = registerDoor( new BlockBOPDoor(AllWoods.WILLOW), "willow_door", BOPItems.willow_door );
pine_door = registerDoor( new BlockBOPDoor(AllWoods.PINE), "pine_door", BOPItems.pine_door );
hellbark_door = registerDoor( new BlockBOPDoor(AllWoods.HELLBARK), "hellbark_door", BOPItems.hellbark_door );
jacaranda_door = registerDoor( new BlockBOPDoor(AllWoods.JACARANDA), "jacaranda_door", BOPItems.jacaranda_door );
mahogany_door = registerDoor( new BlockBOPDoor(AllWoods.MAHOGANY), "mahogany_door", BOPItems.mahogany_door );
// TODO: stone/mud brick stairs and slabs
@ -238,12 +238,12 @@ public class ModBlocks
}
// use a separate function for registering doors because the door block and item need to be registered together
public static Block registerDoor(Block door_block, String name, Item door_item)
public static Block registerDoor(BlockBOPDoor door_block, String name, Item door_item)
{
door_block = registerBlock( new BlockBOPDoor(), name + "_block", null );
door_item = ModItems.registerItem( new ItemDoor(door_block), name );
((BlockBOPDoor)door_block).setDoorItem(door_item);
return door_block;
Block block = registerBlock( door_block, name + "_block", null );
door_item = ModItems.registerItem( new ItemDoor(block), name );
door_block.setDoorItem(door_item);
return block;
}

View File

@ -15,6 +15,8 @@ import biomesoplenty.api.block.BOPWoodEnums.AllWoods;
import biomesoplenty.api.item.BOPItems;
import biomesoplenty.common.block.BlockBOPDoor;
import biomesoplenty.common.block.BlockBOPDoublePlant;
import biomesoplenty.common.block.BlockBOPFence;
import biomesoplenty.common.block.BlockBOPFenceGate;
import biomesoplenty.common.block.BlockBOPFlower;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.block.BlockBOPHalfWoodSlab;
@ -22,6 +24,7 @@ import biomesoplenty.common.block.BlockBOPLog;
import biomesoplenty.common.block.BlockBOPMushroom;
import biomesoplenty.common.block.BlockBOPPlanks;
import biomesoplenty.common.block.BlockBOPPlant;
import biomesoplenty.common.block.BlockBOPStairs;
import biomesoplenty.common.block.BlockBones;
import biomesoplenty.common.block.BlockGem;
import biomesoplenty.common.block.BlockHive;
@ -108,92 +111,12 @@ public class ModCrafting
if (!wood.hasPlanks()) {continue;}
GameRegistry.addShapelessRecipe(BlockBOPPlanks.paging.getVariantItem(wood, 4), BlockBOPLog.paging.getVariantItem(wood));
GameRegistry.addShapedRecipe(BlockBOPHalfWoodSlab.paging.getVariantItem(wood, 6), new Object[] {"###", '#', BlockBOPPlanks.paging.getVariantItem(wood)});
GameRegistry.addShapedRecipe(new ItemStack(BlockBOPStairs.getBlock(wood), 4), new Object[] {"# ", "## ", "###", '#', BlockBOPPlanks.paging.getVariantItem(wood)});
GameRegistry.addShapedRecipe(new ItemStack(BlockBOPDoor.getBlock(wood).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', BlockBOPPlanks.paging.getVariantItem(wood)});
GameRegistry.addShapedRecipe(new ItemStack(BlockBOPFence.getBlock(wood), 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', BlockBOPPlanks.paging.getVariantItem(wood)});
GameRegistry.addShapedRecipe(new ItemStack(BlockBOPFenceGate.getBlock(wood), 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', BlockBOPPlanks.paging.getVariantItem(wood)});
}
// SACRED_OAK
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.sacred_oak_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.SACRED_OAK.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.sacred_oak_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.SACRED_OAK.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.sacred_oak_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.SACRED_OAK.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.sacred_oak_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.SACRED_OAK.ordinal())});
// CHERRY
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.cherry_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.CHERRY.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.cherry_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.CHERRY.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.cherry_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.CHERRY.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.cherry_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.CHERRY.ordinal())});
// DARK
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.dark_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.DARK.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.dark_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.DARK.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.dark_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.DARK.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.dark_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.DARK.ordinal())});
// FIR
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.fir_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.FIR.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.fir_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.FIR.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.fir_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.FIR.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.fir_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.FIR.ordinal())});
// ETHEREAL
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.ethereal_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.ETHEREAL.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.ethereal_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.ETHEREAL.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.ethereal_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.ETHEREAL.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.ethereal_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.ETHEREAL.ordinal())});
// MAGIC
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.magic_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MAGIC.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.magic_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MAGIC.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.magic_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MAGIC.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.magic_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MAGIC.ordinal())});
// MANGROVE
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.mangrove_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MANGROVE.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.mangrove_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MANGROVE.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.mangrove_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MANGROVE.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.mangrove_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MANGROVE.ordinal())});
// PALM
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.palm_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.PALM.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.palm_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.PALM.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.palm_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.PALM.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.palm_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.PALM.ordinal())});
// REDWOOD
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.redwood_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.REDWOOD.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.redwood_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.REDWOOD.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.redwood_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.REDWOOD.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.redwood_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.REDWOOD.ordinal())});
// WILLOW
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.willow_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.WILLOW.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.willow_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.WILLOW.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.willow_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.WILLOW.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.willow_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.WILLOW.ordinal())});
// PINE
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.pine_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.PINE.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.pine_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.PINE.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.pine_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.PINE.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.pine_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.PINE.ordinal())});
// HELLBARK
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.hellbark_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.HELLBARK.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.hellbark_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.HELLBARK.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.hellbark_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.HELLBARK.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.hellbark_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.HELLBARK.ordinal())});
// JACARANDA
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.jacaranda_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.JACARANDA.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.jacaranda_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.JACARANDA.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.jacaranda_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.JACARANDA.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.jacaranda_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.JACARANDA.ordinal())});
// MAHOGANY
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.mahogany_stairs, 4), new Object[] {"# ", "## ", "###", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MAHOGANY.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(((BlockBOPDoor)BOPBlocks.mahogany_door).getDoorItem(), 3), new Object[] {"##", "##", "##", '#', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MAHOGANY.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.mahogany_fence, 3), new Object[] {"W#W", "W#W", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MAHOGANY.ordinal())});
GameRegistry.addShapedRecipe(new ItemStack(BOPBlocks.mahogany_fence_gate, 1), new Object[] {"#W#", "#W#", '#', Items.stick, 'W', new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MAHOGANY.ordinal())});
/*** Gems and Gem Blocks ***/
@ -419,121 +342,19 @@ public class ModCrafting
// OreDictionary.registerOre("treeLeaves", new ItemStack(BOPCBlocks.appleLeaves, 1, OreDictionary.WILDCARD_VALUE));
// OreDictionary.registerOre("treeLeaves", new ItemStack(BOPCBlocks.persimmonLeaves, 1, OreDictionary.WILDCARD_VALUE));
// SACRED_OAK
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.SACRED_OAK));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.SACRED_OAK.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.SACRED_OAK));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.sacred_oak_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.sacred_oak_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.sacred_oak_fence_gate));
// CHERRY
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.CHERRY));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.CHERRY.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.CHERRY));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.cherry_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.cherry_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.cherry_fence_gate));
// DARK
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.DARK));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.DARK.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.DARK));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.dark_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.dark_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.dark_fence_gate));
// FIR
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.FIR));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.FIR.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.FIR));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.fir_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.fir_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.fir_fence_gate));
// ETHEREAL
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.ETHEREAL));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.ETHEREAL.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.ETHEREAL));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.ethereal_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.ethereal_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.ethereal_fence_gate));
// MAGIC
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.MAGIC));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MAGIC.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.MAGIC));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.magic_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.magic_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.magic_fence_gate));
// MANGROVE
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.MANGROVE));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MANGROVE.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.MANGROVE));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.mangrove_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.mangrove_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.mangrove_fence_gate));
// PALM
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.PALM));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.PALM.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.PALM));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.palm_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.palm_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.palm_fence_gate));
// REDWOOD
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.REDWOOD));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.REDWOOD.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.REDWOOD));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.redwood_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.redwood_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.redwood_fence_gate));
// WILLOW
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.WILLOW));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.WILLOW.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.WILLOW));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.willow_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.willow_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.willow_fence_gate));
// PINE
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.PINE));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.PINE.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.PINE));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.pine_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.pine_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.pine_fence_gate));
// HELLBARK
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.HELLBARK));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.HELLBARK.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.HELLBARK));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.hellbark_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.hellbark_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.hellbark_fence_gate));
// JACARANDA
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.JACARANDA));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.JACARANDA.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.JACARANDA));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.jacaranda_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.jacaranda_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.jacaranda_fence_gate));
// MAHOGANY
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.MAHOGANY));
OreDictionary.registerOre("plankWood", new ItemStack(BOPBlocks.planks_0, 1, AllWoods.MAHOGANY.ordinal()));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(AllWoods.MAHOGANY));
OreDictionary.registerOre("stairWood", new ItemStack(BOPBlocks.mahogany_stairs));
OreDictionary.registerOre("fenceWood", new ItemStack(BOPBlocks.mahogany_fence));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BOPBlocks.mahogany_fence_gate));
// DEAD
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(AllWoods.DEAD));
for (AllWoods wood : AllWoods.values())
{
OreDictionary.registerOre("logWood", BlockBOPLog.paging.getVariantItem(wood));
if (wood.hasPlanks())
{
OreDictionary.registerOre("plankWood", BlockBOPPlanks.paging.getVariantItem(wood));
OreDictionary.registerOre("slabWood", BlockBOPHalfWoodSlab.paging.getVariantItem(wood));
OreDictionary.registerOre("stairWood", new ItemStack(BlockBOPStairs.getBlock(wood)));
OreDictionary.registerOre("fenceWood", new ItemStack(BlockBOPFence.getBlock(wood)));
OreDictionary.registerOre("fenceGateWood", new ItemStack(BlockBOPFenceGate.getBlock(wood)));
}
}
}