diff --git a/1.11/To-Dos b/1.11/To-Dos index dd43415b..9b959702 100644 --- a/1.11/To-Dos +++ b/1.11/To-Dos @@ -1,25 +1,12 @@ To-Dos *** Bugs *** -- [ ] Duplication Bug for Tool Repair + *** Priority *** -- [ ] Change how bloomery does recipe cookTime -- [x] Update blockstates with: - - [x] cleanIron - - [x] steel - - [x] wootz -- [ ] Fix Breaker Render to rotate correctly - +- [ ] StoneTongs for all tool heads - [ ] Move Ingot break into chunks logic out of the block and into the ForgeHammer -- [x] Make an Iron Anvil - - [x] Check Iron Anvil creation logic -- [x] Make New Ore Tool, Tool Part, Ingot, and Chunk Assets -- [ ] Make All Accompanying Recipes -- [x] Make Steel Recipes and Tools -- [x] Make Wootz Recipes and Tools - [ ] Add Yew -- [x] Update tool parts and tool textures *** Feature Musket *** - [ ] Create powder charge item (copper, charcoal, gunpowder) @@ -51,6 +38,20 @@ rm *.json-- rename s/iron/steel/ iron* *** Completed *** +- [x] Change how bloomery does recipe cookTime +- [x] Duplication Bug for Tool Repair +- [x] Fix Breaker Render to rotate correctly +- [x] Make All Accompanying Recipes +- [x] Update blockstates with: + - [x] cleanIron + - [x] steel + - [x] wootz +- [x] Make an Iron Anvil + - [x] Check Iron Anvil creation logic +- [x] Make New Ore Tool, Tool Part, Ingot, and Chunk Assets +- [x] Make Steel Recipes and Tools +- [x] Make Wootz Recipes and Tools +- [x] Update tool parts and tool textures - [x] Light Forge and Firebox with Firebow or Torch - [x] Any gallagher can be used to make a stone anvil - [x] Update Crafting for tools to include leatherStrap diff --git a/1.11/src/main/java/nmd/primal/forgecraft/blocks/Anvil.java b/1.11/src/main/java/nmd/primal/forgecraft/blocks/Anvil.java index 29d3cd3d..21a5ac59 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/blocks/Anvil.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/blocks/Anvil.java @@ -188,6 +188,7 @@ public class Anvil extends CustomContainerFacing { (outputStack.getSubCompound("tags").getInteger("emerald") + 1)); outputStack.getSubCompound("tags").setInteger("modifiers", (outputStack.getSubCompound("tags").getInteger("modifiers") + 1)); + CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack); } } } @@ -199,6 +200,7 @@ public class Anvil extends CustomContainerFacing { (outputStack.getSubCompound("tags").getInteger("diamond") + 1)); outputStack.getSubCompound("tags").setInteger("modifiers", (outputStack.getSubCompound("tags").getInteger("modifiers") + 1)); + CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack); } //Upgrade redstone @@ -208,6 +210,7 @@ public class Anvil extends CustomContainerFacing { (outputStack.getSubCompound("tags").getInteger("redstone") + 1)); outputStack.getSubCompound("tags").setInteger("modifiers", (outputStack.getSubCompound("tags").getInteger("modifiers") + 1)); + CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack); } //Upgrade lapis @@ -218,13 +221,11 @@ public class Anvil extends CustomContainerFacing { (outputStack.getSubCompound("tags").getInteger("lapis") + 1)); outputStack.getSubCompound("tags").setInteger("modifiers", (outputStack.getSubCompound("tags").getInteger("modifiers") + 1)); + CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack); } } - } - CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack); } - } else { CommonUtils.spawnItemEntityFromWorld(world, pos, recipe.getOutput()); } diff --git a/1.11/src/main/java/nmd/primal/forgecraft/blocks/Breaker.java b/1.11/src/main/java/nmd/primal/forgecraft/blocks/Breaker.java index 8a02c56a..4210133d 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/blocks/Breaker.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/blocks/Breaker.java @@ -118,16 +118,13 @@ public class Breaker extends CustomContainerFacing { if (!state.getValue(ACTIVE)) { world.setBlockState(pos, state.withProperty(FACING, state.getValue(FACING)).withProperty(ACTIVE, true), 2); } - tile.setCharge(tile.getCharge() + 2.0f); - tile.updateBlock(); - //System.out.println(tile.charge); - return true; + if(tile.getCharge() < 181) { + tile.setCharge(tile.getCharge() + 2.0f); + tile.updateBlock(); + //System.out.println(tile.charge); + return true; + } } - /*if(state.getValue(ACTIVE) == true && !player.isSneaking() && pItem.isEmpty()){ - //world.setBlockState(pos, state.withProperty(FACING, state.getValue(FACING)).withProperty(ACTIVE, true), 2); - tile.setCharge(tile.getCharge() + 2.0f); - return true; - }*/ if(pItem.getItem() instanceof WorkMallet){ diff --git a/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java b/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java index cd78f419..3c4fd0f6 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java @@ -84,13 +84,14 @@ public class ModCrafting { ('Y'), ModBlocks.emptycrucible)); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.rawcleanironcrucible), - "X","Y", + "XL","Y ", ('X'), "dustIron", + ('L'), PrimalItems.CARBONATE_SLACK, ('Y'), ModBlocks.emptycrucible)); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.rawsteelcrucible), "XC","Y ", - ('X'), "dustIron", + ('X'), new ItemStack(ModBlocks.ironcleanball, 1), ('C'), new ItemStack(Items.COAL, 1, 1), ('Y'), ModBlocks.emptycrucible)); @@ -390,7 +391,7 @@ public class ModCrafting { 1.0f ); -//Makes a Hot PickaxeHead + /***Makes a Hot Iron PickaxeHead***/ ForgeCrafting.addRecipe( ModItems.pickaxehead, new ItemStack(ModItems.pickaxehead, 1 ), @@ -401,7 +402,31 @@ public class ModCrafting { 1.0f ); - //Makes a Hot AxeHead + /***Makes a Hot Clean Iron PickaxeHead***/ + ForgeCrafting.addRecipe( + ModItems.cleanironpickaxehead, + new ItemStack(ModItems.cleanironpickaxehead, 1 ), + 800, + 160, + 400, + 1.0f, + 1.0f + ); + + /***Makes a Hot Steel PickaxeHead***/ + ForgeCrafting.addRecipe( + ModItems.steelpickaxehead, + new ItemStack(ModItems.steelpickaxehead, 1 ), + 800, + 160, + 400, + 1.0f, + 1.0f + ); + + //TODO Wootz Pickaxe + + /***Makes a Hot Iron AxeHead***/ ForgeCrafting.addRecipe( ModItems.ironaxehead, new ItemStack(ModItems.ironaxehead, 1 ), @@ -411,7 +436,29 @@ public class ModCrafting { 1.0f, 1.0f ); - //Makes a Hot ShovelHead + /***Makes a Hot Clean Iron AxeHead***/ + ForgeCrafting.addRecipe( + ModItems.cleanironaxehead, + new ItemStack(ModItems.cleanironaxehead, 1 ), + 800, + 160, + 400, + 1.0f, + 1.0f + ); + /***Makes a Hot Steel AxeHead***/ + ForgeCrafting.addRecipe( + ModItems.steelaxehead, + new ItemStack(ModItems.steelaxehead, 1 ), + 800, + 160, + 400, + 1.0f, + 1.0f + ); + //TODO Wootz + + /***Makes a Hot Iron ShovelHead***/ ForgeCrafting.addRecipe( ModItems.ironshovelhead, new ItemStack(ModItems.ironshovelhead, 1 ), @@ -421,7 +468,29 @@ public class ModCrafting { 1.0f, 1.0f ); - //Makes a Hot HoeHead + /***Makes a Hot Clean Iron ShovelHead***/ + ForgeCrafting.addRecipe( + ModItems.cleanironshovelhead, + new ItemStack(ModItems.cleanironshovelhead, 1 ), + 800, + 160, + 400, + 1.0f, + 1.0f + ); + /***Makes a Hot Steel ShovelHead***/ + ForgeCrafting.addRecipe( + ModItems.steelshovelhead, + new ItemStack(ModItems.steelshovelhead, 1 ), + 800, + 160, + 400, + 1.0f, + 1.0f + ); + //TODO Wootz + + /***Makes a Hot Iron HoeHead***/ ForgeCrafting.addRecipe( ModItems.ironhoehead, new ItemStack(ModItems.ironhoehead, 1 ), @@ -431,7 +500,27 @@ public class ModCrafting { 1.0f, 1.0f ); - + /***Makes a Hot Clean Iron HoeHead***/ + ForgeCrafting.addRecipe( + ModItems.cleanironhoehead, + new ItemStack(ModItems.cleanironhoehead, 1 ), + 800, + 160, + 400, + 1.0f, + 1.0f + ); + /***Makes a Hot Steel HoeHead***/ + ForgeCrafting.addRecipe( + ModItems.steelhoehead, + new ItemStack(ModItems.steelhoehead, 1 ), + 800, + 160, + 400, + 1.0f, + 1.0f + ); + //TODO Wootz /****************************************************************************** ANVILING @@ -439,6 +528,9 @@ public class ModCrafting { String empty = ItemStack.EMPTY.getItem().getRegistryName().toString(); String hotChunk = ModItems.ironchunkhot.getRegistryName().toString(); + String hotCleanChunk = ModItems.ironcleanchunkhot.getRegistryName().toString(); + String hotSteelChunk = ModItems.steelchunkhot.getRegistryName().toString(); + String diamond = Items.DIAMOND.getRegistryName().toString(); String emerald = Items.EMERALD.getRegistryName().toString(); @@ -452,6 +544,21 @@ public class ModCrafting { String ironshovelhead = ModItems.ironshovelhead.getRegistryName().toString(); String ironhoehead = ModItems.ironhoehead.getRegistryName().toString(); + String cleanpickaxehead = ModItems.cleanironpickaxehead.getRegistryName().toString(); + String cleanaxehead = ModItems.cleanironaxehead.getRegistryName().toString(); + String cleanshovelhead = ModItems.cleanironshovelhead.getRegistryName().toString(); + String cleanhoehead = ModItems.cleanironhoehead.getRegistryName().toString(); + + String steelpickaxehead = ModItems.steelpickaxehead.getRegistryName().toString(); + String steelaxehead = ModItems.steelaxehead.getRegistryName().toString(); + String steelshovelhead = ModItems.steelshovelhead.getRegistryName().toString(); + String steelhoehead = ModItems.steelhoehead.getRegistryName().toString(); + + String wootzpickaxehead = ModItems.wootzpickaxehead.getRegistryName().toString(); + String wootzaxehead = ModItems.wootzaxehead.getRegistryName().toString(); + String wootzshovelhead = ModItems.wootzshovelhead.getRegistryName().toString(); + String wootzhoehead = ModItems.wootzhoehead.getRegistryName().toString(); + /* Empty = 0 hotChunk = 1 @@ -517,6 +624,28 @@ public class ModCrafting { new ItemStack(ModItems.ironsword, 1), "null" ); + /*** Temp Clean Iron Sword ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotCleanChunk,empty,empty, + empty,empty,hotCleanChunk,empty,empty, + empty,hotCleanChunk,hotCleanChunk,hotCleanChunk,empty, + empty,empty,hotCleanChunk,empty,empty }, + new ItemStack(ModItems.cleanironsword, 1), + "null" + ); + /*** Temp Steel Sword ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotSteelChunk,empty,empty, + empty,empty,hotSteelChunk,empty,empty, + empty,hotSteelChunk,hotSteelChunk,hotSteelChunk,empty, + empty,empty,hotSteelChunk,empty,empty }, + new ItemStack(ModItems.steelsword, 1), + "null" + ); /*** Flaked emerald ***/ AnvilCrafting.addRecipe( @@ -530,7 +659,10 @@ public class ModCrafting { "null" ); - /***Pickaxe Head***/ + /******************************************************* + * Pickaxes * + *******************************************************/ + /***Iron Pickaxe Head***/ AnvilCrafting.addRecipe( new String[] { empty,empty,empty,empty,empty, @@ -541,8 +673,31 @@ public class ModCrafting { new ItemStack(ModItems.pickaxehead, 1), "null" ); + /***Clean Iron Pickaxe Head***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,hotCleanChunk,hotCleanChunk,hotCleanChunk,empty, + hotCleanChunk,empty,empty,empty,hotCleanChunk, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironpickaxehead, 1), + "null" + ); + /***Steel Pickaxe Head***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,hotSteelChunk,hotSteelChunk,hotSteelChunk,empty, + hotSteelChunk,empty,empty,empty,hotSteelChunk, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelpickaxehead, 1), + "null" + ); + //TODO wootz - /*** REPAIR Pickaxe Head***/ + /*** REPAIR Iron Pickaxe Head***/ AnvilCrafting.addRecipe( new String[] { empty,empty,empty,empty,empty, @@ -553,8 +708,31 @@ public class ModCrafting { new ItemStack(ModItems.pickaxehead, 1), "repair" ); + /*** REPAIR Clean Iron Pickaxe Head***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotCleanChunk,empty,empty, + empty,empty,cleanpickaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironpickaxehead, 1), + "repair" + ); + /*** REPAIR Steel Pickaxe Head***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotSteelChunk,empty,empty, + empty,empty,steelpickaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelpickaxehead, 1), + "repair" + ); + //TODO Wootz - /*** Emerald Upgrade to Pickaxe Head ***/ + /*** Emerald Upgrade to Iron Pickaxe Head ***/ AnvilCrafting.addRecipe( new String[] { empty,empty,empty,empty,empty, @@ -566,7 +744,7 @@ public class ModCrafting { "emerald" ); - /*** Diamond Upgrade to Pickaxe Head ***/ + /*** Diamond Upgrade to Iron Pickaxe Head ***/ AnvilCrafting.addRecipe( new String[] { empty,empty,empty,empty,empty, @@ -578,7 +756,7 @@ public class ModCrafting { "diamond" ); - /*** Redstone Upgrade to Pickaxe Head ***/ + /*** Redstone Upgrade to Iron Pickaxe Head ***/ AnvilCrafting.addRecipe( new String[] { empty,empty,empty,empty,empty, @@ -590,7 +768,7 @@ public class ModCrafting { "redstone" ); - /*** Lapis Upgrade to Pickaxe Head ***/ + /*** Lapis Upgrade to Iron Pickaxe Head ***/ AnvilCrafting.addRecipe( new String[] { empty,empty,empty,empty,empty, @@ -602,7 +780,105 @@ public class ModCrafting { "lapis" ); - /*** Axe Head ***/ + /*** Emerald Upgrade to Clean Iron Pickaxe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,emeraldShard,empty,empty, + empty,empty,cleanpickaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironpickaxehead, 1), + "emerald" + ); + + /*** Diamond Upgrade to Clean Iron Pickaxe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,diamondShard,empty,empty, + empty,empty,cleanpickaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironpickaxehead, 1), + "diamond" + ); + + /*** Redstone Upgrade to Clean Iron Pickaxe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,redstone,empty,empty, + empty,empty,cleanpickaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironpickaxehead, 1), + "redstone" + ); + + /*** Lapis Upgrade to Clean Iron Pickaxe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,lapis,empty,empty, + empty,empty,cleanpickaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironpickaxehead, 1), + "lapis" + ); + + /*** Emerald Upgrade to Steel Pickaxe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,emeraldShard,empty,empty, + empty,empty,steelpickaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelpickaxehead, 1), + "emerald" + ); + + /*** Diamond Upgrade to Steel Pickaxe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,diamondShard,empty,empty, + empty,empty,steelpickaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelpickaxehead, 1), + "diamond" + ); + + /*** Redstone Upgrade to Steel Pickaxe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,redstone,empty,empty, + empty,empty,steelpickaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelpickaxehead, 1), + "redstone" + ); + + /*** Lapis Upgrade to Steel Pickaxe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,lapis,empty,empty, + empty,empty,steelpickaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelpickaxehead, 1), + "lapis" + ); + + /******************************************************* + * Axes * + *******************************************************/ AnvilCrafting.addRecipe( new String[] { empty,hotChunk,hotChunk,empty,empty, @@ -613,7 +889,6 @@ public class ModCrafting { new ItemStack(ModItems.ironaxehead, 1), "null" ); - /*** REPAIR AXE Head***/ AnvilCrafting.addRecipe( new String[] { @@ -625,6 +900,51 @@ public class ModCrafting { new ItemStack(ModItems.ironaxehead, 1), "repair" ); + /*** Clean Iron Axe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,hotCleanChunk,hotCleanChunk,empty,empty, + empty,hotCleanChunk,hotCleanChunk,hotCleanChunk,empty, + empty,hotCleanChunk,hotCleanChunk,hotCleanChunk,empty, + empty,hotCleanChunk,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironaxehead, 1), + "null" + ); + /*** REPAIR Clean Iron AXE Head***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotChunk,empty,empty, + empty,empty,cleanaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironaxehead, 1), + "repair" + ); + /*** Steel Axe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,hotSteelChunk,hotSteelChunk,empty,empty, + empty,hotSteelChunk,hotSteelChunk,hotSteelChunk,empty, + empty,hotSteelChunk,hotSteelChunk,hotSteelChunk,empty, + empty,hotSteelChunk,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelaxehead, 1), + "null" + ); + /*** REPAIR steel AXE Head***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotSteelChunk,empty,empty, + empty,empty,steelaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelaxehead, 1), + "repair" + ); + /*** Emerald Upgrade to Axe Head ***/ AnvilCrafting.addRecipe( @@ -674,7 +994,106 @@ public class ModCrafting { "lapis" ); - /*** Shovel Head ***/ + /*** Emerald Upgrade to Axe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,emeraldShard,empty,empty, + empty,empty,cleanaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironaxehead, 1), + "emerald" + ); + + /*** Diamond Upgrade to Axe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,diamondShard,empty,empty, + empty,empty,cleanaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironaxehead, 1), + "diamond" + ); + + /*** Redstone Upgrade to Axe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,redstone,empty,empty, + empty,empty,cleanaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironaxehead, 1), + "redstone" + ); + + /*** Lapis Upgrade to Axe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,lapis,empty,empty, + empty,empty,cleanaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironaxehead, 1), + "lapis" + ); + + /*** Emerald Upgrade to Axe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,emeraldShard,empty,empty, + empty,empty,steelaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelaxehead, 1), + "emerald" + ); + + /*** Diamond Upgrade to Axe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,diamondShard,empty,empty, + empty,empty,steelaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelaxehead, 1), + "diamond" + ); + + /*** Redstone Upgrade to Axe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,redstone,empty,empty, + empty,empty,steelaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelaxehead, 1), + "redstone" + ); + + /*** Lapis Upgrade to Axe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,lapis,empty,empty, + empty,empty,steelaxehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelaxehead, 1), + "lapis" + ); + + /******************************************************* + * Shovel * + *******************************************************/ + /*** Iron Shovel Head ***/ AnvilCrafting.addRecipe( new String[] { empty,empty,empty,empty,empty, @@ -686,7 +1105,7 @@ public class ModCrafting { "null" ); - /*** REPAIR SHOVEL Head***/ + /*** REPAIR iron SHOVEL Head***/ AnvilCrafting.addRecipe( new String[] { empty,empty,empty,empty,empty, @@ -697,6 +1116,52 @@ public class ModCrafting { new ItemStack(ModItems.ironshovelhead, 1), "repair" ); + /*** Clean Iron Shovel Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotCleanChunk,empty,empty, + empty,hotCleanChunk,hotCleanChunk,hotCleanChunk,empty, + empty,hotCleanChunk,hotCleanChunk,hotCleanChunk,empty, + empty,hotCleanChunk,empty,hotCleanChunk,empty }, + new ItemStack(ModItems.cleanironshovelhead, 1), + "null" + ); + + /*** REPAIR clean iron SHOVEL Head***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotCleanChunk,empty,empty, + empty,empty,cleanshovelhead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironshovelhead, 1), + "repair" + ); + /*** Steel Shovel Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotSteelChunk,empty,empty, + empty,hotSteelChunk,hotSteelChunk,hotSteelChunk,empty, + empty,hotSteelChunk,hotSteelChunk,hotSteelChunk,empty, + empty,hotSteelChunk,empty,hotSteelChunk,empty }, + new ItemStack(ModItems.steelshovelhead, 1), + "null" + ); + + /*** REPAIR steel SHOVEL Head***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotSteelChunk,empty,empty, + empty,empty,steelshovelhead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelshovelhead, 1), + "repair" + ); /*** Emerald Upgrade to Shovel Head ***/ AnvilCrafting.addRecipe( @@ -745,8 +1210,105 @@ public class ModCrafting { new ItemStack(ModItems.ironshovelhead, 1), "lapis" ); + /*** Emerald Upgrade to Shovel Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,emeraldShard,empty,empty, + empty,empty,cleanshovelhead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironshovelhead, 1), + "emerald" + ); - /*** Hoe Head ***/ + /*** Diamond Upgrade to Shovel Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,diamondShard,empty,empty, + empty,empty,cleanshovelhead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironshovelhead, 1), + "diamond" + ); + + /*** Redstone Upgrade to Shovel Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,redstone,empty,empty, + empty,empty,cleanshovelhead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironshovelhead, 1), + "redstone" + ); + + /*** Lapis Upgrade to Shovel Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,lapis,empty,empty, + empty,empty,cleanshovelhead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironshovelhead, 1), + "lapis" + ); + /*** Emerald Upgrade to Shovel Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,emeraldShard,empty,empty, + empty,empty,steelshovelhead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelshovelhead, 1), + "emerald" + ); + + /*** Diamond Upgrade to Shovel Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,diamondShard,empty,empty, + empty,empty,steelshovelhead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelshovelhead, 1), + "diamond" + ); + + /*** Redstone Upgrade to Shovel Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,redstone,empty,empty, + empty,empty,steelshovelhead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelshovelhead, 1), + "redstone" + ); + + /*** Lapis Upgrade to Shovel Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,lapis,empty,empty, + empty,empty,steelshovelhead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelshovelhead, 1), + "lapis" + ); + + /******************************************************* + * Hoe * + *******************************************************/ + /*** Iron Hoe Head ***/ AnvilCrafting.addRecipe( new String[] { empty,empty,empty,hotChunk,hotChunk, @@ -758,7 +1320,7 @@ public class ModCrafting { "null" ); - /*** REPAIR HOE Head***/ + /*** REPAIR Iron HOE Head***/ AnvilCrafting.addRecipe( new String[] { empty,empty,empty,empty,empty, @@ -769,6 +1331,52 @@ public class ModCrafting { new ItemStack(ModItems.ironhoehead, 1), "repair" ); + /*** Clean Iron Hoe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,hotCleanChunk,hotCleanChunk, + empty,empty,hotCleanChunk,empty,empty, + empty,hotCleanChunk,empty,empty,empty, + hotCleanChunk,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironhoehead, 1), + "null" + ); + + /*** REPAIR Clean Iron HOE Head***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotCleanChunk,empty,empty, + empty,empty,cleanhoehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironhoehead, 1), + "repair" + ); + /*** Steel Hoe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,hotSteelChunk,hotSteelChunk, + empty,empty,hotSteelChunk,empty,empty, + empty,hotSteelChunk,empty,empty,empty, + hotSteelChunk,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelhoehead, 1), + "null" + ); + + /*** REPAIR Steel HOE Head***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotSteelChunk,empty,empty, + empty,empty,steelhoehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelhoehead, 1), + "repair" + ); /*** Emerald Upgrade to Hoe Head ***/ AnvilCrafting.addRecipe( @@ -817,7 +1425,100 @@ public class ModCrafting { new ItemStack(ModItems.ironhoehead, 1), "lapis" ); + /*** Emerald Upgrade to Hoe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,emeraldShard,empty,empty, + empty,empty,cleanhoehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironhoehead, 1), + "emerald" + ); + /*** Diamond Upgrade to Hoe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,diamondShard,empty,empty, + empty,empty,cleanhoehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironhoehead, 1), + "diamond" + ); + + /*** Redstone Upgrade to Hoe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,redstone,empty,empty, + empty,empty,cleanhoehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironhoehead, 1), + "redstone" + ); + + /*** Lapis Upgrade to Hoe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,lapis,empty,empty, + empty,empty,cleanhoehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.cleanironhoehead, 1), + "lapis" + ); + /*** Emerald Upgrade to Hoe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,emeraldShard,empty,empty, + empty,empty,steelhoehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelhoehead, 1), + "emerald" + ); + + /*** Diamond Upgrade to Hoe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,diamondShard,empty,empty, + empty,empty,steelhoehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelhoehead, 1), + "diamond" + ); + + /*** Redstone Upgrade to Hoe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,redstone,empty,empty, + empty,empty,steelhoehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelhoehead, 1), + "redstone" + ); + + /*** Lapis Upgrade to Hoe Head ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,lapis,empty,empty, + empty,empty,steelhoehead,empty,empty, + empty,empty,empty,empty,empty, + empty,empty,empty,empty,empty }, + new ItemStack(ModItems.steelhoehead, 1), + "lapis" + ); } } diff --git a/1.11/src/main/java/nmd/primal/forgecraft/renders/blocks/TileBreakerRender.java b/1.11/src/main/java/nmd/primal/forgecraft/renders/blocks/TileBreakerRender.java index 1306c1b0..aa722511 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/renders/blocks/TileBreakerRender.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/renders/blocks/TileBreakerRender.java @@ -30,7 +30,7 @@ public class TileBreakerRender extends TileEntitySpecialRenderer public void renderTileEntityAt(TileBreaker tile, double x, double y, double z, float partialTicks, int destroyStage) { GL11.glPushMatrix(); - GL11.glTranslated(x + 0.5D, y + 0.95D, z + 0.5D); + GL11.glTranslated(x , y, z); GL11.glScalef(1.0f,1.0f,1.0f); Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); float prevLGTX = OpenGlHelper.lastBrightnessX; @@ -44,11 +44,64 @@ public class TileBreakerRender extends TileEntitySpecialRenderer if(state.getValue(Breaker.FACING) == EnumFacing.NORTH) { GL11.glPushMatrix(); + GL11.glTranslated(0.5D, 0.450D, 0.7); GL11.glRotated(90, 0.0f, 1.0f, 0.0f); + GL11.glRotatef(-135, 0.0f, 0.0f, 1.0f); + GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, 1.0f); + + GL11.glTranslatef(0.0f, 0.40f, 0.0f); + GL11.glTranslated(-0.45D, 0.0D, 0.0D); + renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); GL11.glPopMatrix(); } + + if(state.getValue(Breaker.FACING) == EnumFacing.EAST) { + GL11.glPushMatrix(); + GL11.glTranslated(0.3D, 0.450D, 0.5); + //GL11.glRotated(90, 0.0f, 1.0f, 0.0f); + GL11.glRotatef(-135, 0.0f, 0.0f, 1.0f); + + GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, 1.0f); + + GL11.glTranslatef(0.0f, 0.40f, 0.0f); + GL11.glTranslated(-0.45D, 0.0D, 0.0D); + + renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); + GL11.glPopMatrix(); + } + + if(state.getValue(Breaker.FACING) == EnumFacing.SOUTH) { + GL11.glPushMatrix(); + GL11.glTranslated(0.5D, 0.450D, 0.3); + GL11.glRotated(90, 0.0f, 1.0f, 0.0f); + GL11.glRotatef(45, 0.0f, 0.0f, 1.0f); + + GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, -1.0f); + + GL11.glTranslatef(0.0f, 0.40f, 0.0f); + GL11.glTranslated(-0.45D, 0.0D, 0.0D); + + renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); + GL11.glPopMatrix(); + } + + if(state.getValue(Breaker.FACING) == EnumFacing.WEST) { + GL11.glPushMatrix(); + GL11.glTranslated(0.7D, 0.450D, 0.5); + //GL11.glRotated(90, 0.0f, 1.0f, 0.0f); + GL11.glRotatef(45, 0.0f, 0.0f, 1.0f); + + GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, -1.0f); + + GL11.glTranslatef(0.0f, 0.40f, 0.0f); + GL11.glTranslated(-0.45D, 0.0D, 0.0D); + + renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); + GL11.glPopMatrix(); + } + OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, prevLGTX, prevLGTY); GL11.glPopMatrix(); } diff --git a/1.11/src/main/java/nmd/primal/forgecraft/tiles/TileBloomery.java b/1.11/src/main/java/nmd/primal/forgecraft/tiles/TileBloomery.java index 0c68614e..0b373176 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/tiles/TileBloomery.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/tiles/TileBloomery.java @@ -40,6 +40,7 @@ public class TileBloomery extends TileBaseSlot implements ITickable { this.iteration ++; if(this.iteration == 300 ) { this.iteration = 0; + //IBlockState state = world.getBlockState(this.pos); BlockPos abovePos = new BlockPos(this.getPos().getX(), this.getPos().getY()+1, this.getPos().getZ()); if (world.getBlockState(this.getPos()).getValue(Bloomery.ACTIVE)) { @@ -68,14 +69,14 @@ public class TileBloomery extends TileBaseSlot implements ITickable { if(cookCounter >= recipe.getIdealTime() ){ if(this.getSlotStack(1).getItem() == recipe.getInput().getItem()) { this.setSlotStack(1, recipe.getOutput()); - this.cookCounter = 0; + //this.cookCounter = 0; //System.out.print(" :Success: " + this.getSlotStack(1)); this.updateBlock(); this.markDirty(); } } if(cookCounter > recipe.getIdealTime() + (recipe.getIdealTime() * recipe.getTimeVariance())){ - if(this.getSlotStack(1).getItem() == recipe.getInput().getItem()) { + if(this.getSlotStack(1).getItem() == recipe.getOutput().getItem()) { this.setSlotStack(1, recipe.getOutputFailed()); this.cookCounter = 0; //System.out.print(" :Failure Time: " + this.getSlotStack(1));