diff options
| author | Lance5057 <Lance5057@gmail.com> | 2015-05-06 06:47:03 -0500 |
|---|---|---|
| committer | Lance5057 <Lance5057@gmail.com> | 2015-05-06 06:47:03 -0500 |
| commit | d37b290bd6843832ed8d557cac9dcf94f17d6d6e (patch) | |
| tree | d0e07b37a332b2e574b370b723f598d327f70594 | |
| parent | 061df55c4c0f21a5a0c2003a86ecf87462133cde (diff) | |
Added Daze Modifier, Texture not working
19 files changed, 1072 insertions, 741 deletions
diff --git a/Gimp files/Hood.png b/Gimp files/Hood.png Binary files differnew file mode 100644 index 0000000..ef414ef --- /dev/null +++ b/Gimp files/Hood.png diff --git a/Gimp files/Hoodobj.xcf b/Gimp files/Hoodobj.xcf Binary files differnew file mode 100644 index 0000000..7d9d574 --- /dev/null +++ b/Gimp files/Hoodobj.xcf diff --git a/Models/Steve.blend b/Models/Steve.blend Binary files differindex 4dbf954..852d183 100644 --- a/Models/Steve.blend +++ b/Models/Steve.blend diff --git a/Models/Steve.blend1 b/Models/Steve.blend1 Binary files differindex cc06cb7..f3253b1 100644 --- a/Models/Steve.blend1 +++ b/Models/Steve.blend1 diff --git a/Models/Steve.blend2 b/Models/Steve.blend2 Binary files differnew file mode 100644 index 0000000..4dbf954 --- /dev/null +++ b/Models/Steve.blend2 diff --git a/Models/Steve_heavy.blend b/Models/Steve_heavy.blend Binary files differnew file mode 100644 index 0000000..af075b6 --- /dev/null +++ b/Models/Steve_heavy.blend diff --git a/Models/Steve_heavy.blend1 b/Models/Steve_heavy.blend1 Binary files differnew file mode 100644 index 0000000..74779b1 --- /dev/null +++ b/Models/Steve_heavy.blend1 diff --git a/src/main/java/gmail/Lance5057/TinkersDefense.java b/src/main/java/gmail/Lance5057/TinkersDefense.java index c1f9f01..03c44be 100644 --- a/src/main/java/gmail/Lance5057/TinkersDefense.java +++ b/src/main/java/gmail/Lance5057/TinkersDefense.java @@ -22,14 +22,18 @@ import gmail.Lance5057.items.tools.TinkerWrench; import gmail.Lance5057.liquids.moltenAeonsteelFluid; import gmail.Lance5057.liquids.moltenDogbeariumFluid; import gmail.Lance5057.liquids.moltenQueensGoldFluid; +import gmail.Lance5057.modifiers.TDefenseActiveToolMod; +import gmail.Lance5057.modifiers.modifierDaze; import gmail.Lance5057.network.PacketHandler; import gmail.Lance5057.proxy.CommonProxy; import gmail.Lance5057.tileentities.TileEntity_ArmorAnvil; import gmail.Lance5057.tileentities.TileEntity_CrestMount; import gmail.Lance5057.tileentities.TileEntity_JewelersBench; +import mantle.lib.client.MantleClientRegistry; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @@ -44,9 +48,11 @@ import tconstruct.library.client.TConstructClientRegistry; import tconstruct.library.client.ToolGuiElement; import tconstruct.library.crafting.FluidType; import tconstruct.library.crafting.LiquidCasting; +import tconstruct.library.crafting.ModifyBuilder; import tconstruct.library.crafting.PatternBuilder; import tconstruct.library.crafting.Smeltery; import tconstruct.library.crafting.StencilBuilder; +import tconstruct.library.crafting.ToolBuilder; import tconstruct.library.tools.DynamicToolPart; import tconstruct.library.tools.ToolCore; import tconstruct.smeltery.TinkerSmeltery; @@ -64,413 +70,591 @@ import cpw.mods.fml.common.network.simpleimpl.SimpleNetworkWrapper; import cpw.mods.fml.common.registry.GameRegistry; @Mod(modid = Reference.MOD_ID, version = Reference.VERSION, name = Reference.MOD_NAME) -public class TinkersDefense -{ - -private static int modGuiIndex = 0; -public static final int GUI_ITEM_INV = modGuiIndex++; - -@Instance(Reference.MOD_ID) -public static TinkersDefense instance = new TinkersDefense(); - -public static CreativeTabs tabName = new CreativeTabs("tabName") -{ - -public Item getTabIconItem() { return Items.arrow; } - -}; - -public static final SimpleNetworkWrapper INSTANCE = NetworkRegistry.INSTANCE.newSimpleChannel(Reference.MOD_ID); - -public static Item item_AeonSteelIngot; -public static Block block_AeonSteelBlock; - -public static Fluid moltenAeonsteel; -public static Block moltenAeonsteelBlock; - -public static Item item_QueensGoldIngot; -public static Block block_QueensGoldBlock; - -public static Fluid moltenQueensGold; -public static Block moltenQueensGoldBlock; - -public static Item item_DogbeariumIngot; -public static Block block_DogbeariumBlock; - -public static Fluid moltenDogbearium; -public static Block moltenDogbeariumBlock; - -public static ToolCore tool_roundShield; -public static ToolCore tool_heaterShield; -public static ToolCore tool_wrench; - -public static Block block_CrestMount; -public static Block block_ArmorAnvil; -public static Block block_JewelersBench; - -public static Item item_TinkerArmor; -public static Item item_Crest_Feathers; -public static Item item_Crest_Blades; - -public static Item item_thread; -public static Item item_glowthread; -public static Item item_cloth; - -public static Pattern woodPattern; -public static Pattern metalPattern; - -public static DynamicToolPart partRivet; -public static DynamicToolPart partArmorplate; - - -@SidedProxy(clientSide = "gmail.Lance5057.proxy.ClientProxy", serverSide = "gmail.Lance5057.proxy.CommonProxy") -public static CommonProxy proxy; - - - - -@EventHandler -public void preInit(FMLPreInitializationEvent e) -{ - PacketHandler.init(); - - - - block_CrestMount = new CrestMount() - .setHardness(4.0F) - .setStepSound(Block.soundTypeMetal) - .setBlockName("CrestMount") - .setCreativeTab(tabName); - - GameRegistry.registerBlock(block_CrestMount, "Block_CrestMount"); - GameRegistry.registerTileEntity(TileEntity_CrestMount.class, "Tile_CrestMount"); - - block_ArmorAnvil = new ArmorAnvil() - .setHardness(4.0F) - .setStepSound(Block.soundTypeAnvil) - .setBlockName("ArmorAnvil") - .setCreativeTab(tabName); - - GameRegistry.registerBlock(block_ArmorAnvil, "Block_ArmorAnvil"); - GameRegistry.registerTileEntity(TileEntity_ArmorAnvil.class, "Tile_ArmorAnvil"); - - block_JewelersBench = new JewelersBench() - .setHardness(4.0F) - .setStepSound(Block.soundTypeWood) - .setBlockName("JewelersBench") - .setCreativeTab(tabName); - - GameRegistry.registerBlock(block_JewelersBench, "Block_JewelersBench"); - GameRegistry.registerTileEntity(TileEntity_JewelersBench.class, "Tile_JewelersBench"); - - NetworkRegistry.INSTANCE.registerGuiHandler(TinkersDefense.instance, new CommonProxy()); - MinecraftForge.EVENT_BUS.register(this); - - //AeonSteel - item_AeonSteelIngot = new AeonSteelIngot() - .setCreativeTab(tabName) - .setMaxStackSize(64) - .setUnlocalizedName("AeonSteelIngot") - .setTextureName(Reference.MOD_ID+":AeonSteelIngot"); - - GameRegistry.registerItem(item_AeonSteelIngot, "AeonSteel Ingot"); - - block_AeonSteelBlock = new AeonSteelBlock(Material.iron) - .setHardness(4.0F) - .setStepSound(Block.soundTypeMetal) - .setBlockName("AeonSteelBlock") - .setCreativeTab(tabName) - .setBlockTextureName(Reference.MOD_ID+":AeonSteelBlock"); - - GameRegistry.registerBlock(block_AeonSteelBlock, "aeonsteelblock"); - - GameRegistry.addShapedRecipe(new ItemStack(block_AeonSteelBlock), new Object[] {"xxx", "xxx","xxx", - 'x', item_AeonSteelIngot}); - GameRegistry.addShapelessRecipe(new ItemStack(item_AeonSteelIngot,9),new Object[] {new ItemStack(block_AeonSteelBlock)}); - - moltenAeonsteel = new Fluid("moltenAeonsteel").setLuminosity(15).setDensity(3000).setViscosity(6000).setTemperature(1300); - FluidRegistry.registerFluid(moltenAeonsteel); - - moltenAeonsteelFluid moltenAeonsteelBlock = new moltenAeonsteelFluid(moltenAeonsteel); - - GameRegistry.registerBlock(moltenAeonsteelBlock, "moltenaeonsteel"); - - //Queen's Gold - item_QueensGoldIngot = new QueensGoldIngot() - .setCreativeTab(tabName) - .setMaxStackSize(64) - .setUnlocalizedName("QueensGoldIngot") - .setTextureName(Reference.MOD_ID+":QueensGoldIngot"); - - GameRegistry.registerItem(item_QueensGoldIngot, "Queen's Gold Ingot"); - - block_QueensGoldBlock = new QueensGoldBlock(Material.iron) - .setHardness(4.0F) - .setStepSound(Block.soundTypeMetal) - .setBlockName("QueensGoldBlock") - .setCreativeTab(tabName) - .setBlockTextureName(Reference.MOD_ID+":QueensGoldBlock"); - - GameRegistry.registerBlock(block_QueensGoldBlock, "QueensGoldblock"); - - GameRegistry.addShapedRecipe(new ItemStack(block_QueensGoldBlock), new Object[] {"xxx", "xxx","xxx", - 'x', item_QueensGoldIngot}); - GameRegistry.addShapelessRecipe(new ItemStack(item_QueensGoldIngot,9),new Object[] {new ItemStack(block_QueensGoldBlock)}); - - - moltenQueensGold = new Fluid("moltenQueensGold").setLuminosity(15).setDensity(3000).setViscosity(6000).setTemperature(1300); - FluidRegistry.registerFluid(moltenQueensGold); - - moltenQueensGoldFluid moltenQueensGoldBlock = new moltenQueensGoldFluid(moltenQueensGold); - - GameRegistry.registerBlock(moltenQueensGoldBlock, "moltenQueensGold"); - - //Dogbearium - item_DogbeariumIngot = new DogbeariumIngot() - .setCreativeTab(tabName) - .setMaxStackSize(64) - .setUnlocalizedName("DogbeariumIngot") - .setTextureName(Reference.MOD_ID+":DogbeariumIngot"); - - GameRegistry.registerItem(item_DogbeariumIngot, "DogbeariumIngot"); - - block_DogbeariumBlock = new DogbeariumBlock(Material.iron) - .setHardness(4.0F) - .setStepSound(Block.soundTypeMetal) - .setBlockName("DogbeariumBlock") - .setCreativeTab(tabName) - .setBlockTextureName(Reference.MOD_ID+":DogbeariumBlock"); - - GameRegistry.registerBlock(block_DogbeariumBlock, "Dogbeariumblock"); - - GameRegistry.addShapedRecipe(new ItemStack(block_DogbeariumBlock), new Object[] {"xxx", "xxx","xxx", - 'x', item_DogbeariumIngot}); - GameRegistry.addShapelessRecipe(new ItemStack(item_DogbeariumIngot,9),new Object[] {new ItemStack(block_DogbeariumBlock)}); - - - moltenDogbearium = new Fluid("moltenDogbearium").setLuminosity(15).setDensity(3000).setViscosity(6000).setTemperature(1300); - FluidRegistry.registerFluid(moltenDogbearium); - - moltenDogbeariumFluid moltenDogbeariumBlock = new moltenDogbeariumFluid(moltenDogbearium); - - GameRegistry.registerBlock(moltenDogbeariumBlock, "moltenDogbearium"); - - tool_roundShield = new RoundShield(); - tool_heaterShield = new HeaterShield(); - - tool_wrench = new TinkerWrench(); - - item_Crest_Feathers = new Item() - .setCreativeTab(tabName) - .setMaxStackSize(1) - .setUnlocalizedName("Crest_Feathers") - .setTextureName(Reference.MOD_ID+":Crest_feather"); - - GameRegistry.registerItem(item_Crest_Feathers, "Crest of Feathers"); - GameRegistry.addRecipe(new ItemStack(item_Crest_Feathers), new Object[] {"---", "f-f","-o-", 'f', Items.feather, 'o', Items.iron_ingot}); - - item_Crest_Blades = new Item() - .setCreativeTab(tabName) - .setMaxStackSize(1) - .setUnlocalizedName("Crest_Blades") - .setTextureName(Reference.MOD_ID+":Crest_blades"); - - GameRegistry.registerItem(item_Crest_Blades, "Crest of Blades"); - GameRegistry.addRecipe(new ItemStack(item_Crest_Blades), new Object[] {"---", "f-f","-o-", 'f', Items.iron_sword, 'o', Items.diamond}); - - GameRegistry.registerItem(tool_roundShield, "Round Shield"); - GameRegistry.registerItem(tool_heaterShield, "Heater Shield"); - GameRegistry.registerItem(tool_wrench,"Tinker Wrench"); - TConstructRegistry.addItemToDirectory("Round Shield", tool_roundShield); - TConstructRegistry.addItemToDirectory("Heater Shield", tool_heaterShield); - TConstructRegistry.addItemToDirectory("Tinker Wrench", tool_wrench); - - GameRegistry.registerItem(item_thread = new Item_Thread(), "thread"); - GameRegistry.registerItem(item_glowthread = new Item_Glowthread(), "glowthread"); - GameRegistry.registerItem(item_cloth = new Item_Cloth(), "cloth"); - - woodPattern = new TD_Patterns("pattern_", "Pattern"); - metalPattern = new TD_Patterns("cast_", "MetalPattern"); - - GameRegistry.registerItem(woodPattern, "Pattern"); - //TConstructRegistry.addItemToDirectory("woodPattern", woodPattern); - - GameRegistry.registerItem(metalPattern, "Cast"); - - TConstructRegistry.addItemStackToDirectory("rivets Pattern", new ItemStack(woodPattern, 1, 0)); - TConstructRegistry.addItemStackToDirectory("clasp Pattern", new ItemStack(woodPattern, 1, 1)); - TConstructRegistry.addItemStackToDirectory("armorplate Pattern", new ItemStack(woodPattern, 1, 2)); - - //Renderers - proxy.registerRenderers(); - - - //item_TinkerArmor = new TinkerArmor(ArmorMaterial.IRON, 4, 1).setUnlocalizedName("Tinker_Armor"); - //GameRegistry.registerItem(item_TinkerArmor,"Tinker Armor"); - - -//network.registerMessage(messageHandler, requestMessageType, discriminator, side); -} - -@EventHandler -public void init(FMLInitializationEvent e) -{ - System.out.print(Reference.MOD_ID); - PatternBuilder pb = PatternBuilder.instance; - - //Aeonsteel - pb.registerMaterialSet("AeonSteel", new ItemStack(TinkerTools.toolShard, 1, 10), new ItemStack(TinkerTools.toolRod, 1, 10), 10); - - TConstructClientRegistry.addMaterialRenderMapping(201, "tinker", "aeonsteel", true); - - // Tool Materials: id, name, harvestlevel, durability, speed, damage, handlemodifier, reinforced, shoddy, style color, primary color for block use - TConstructRegistry.addToolMaterial(201, "AeonSteel", 4, 822, 1100, 3, 1.6F, 2, 0f, LIGHT_PURPLE.toString(), 0xb565e6); - TinkerTools.registerPatternMaterial("AeonSteelIngot", 2, "AeonSteel"); - TConstructRegistry.addDefaultToolPartMaterial(201); - - Smeltery.addMelting(new ItemStack(item_AeonSteelIngot, 1, 0), block_AeonSteelBlock, 0, 500, new FluidStack(moltenAeonsteel, TConstruct.ingotLiquidValue)); - Smeltery.addMelting(block_AeonSteelBlock, 0, 500, new FluidStack(moltenAeonsteel, TConstruct.ingotLiquidValue*9)); - - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(item_AeonSteelIngot, 1, 0), new FluidStack(moltenAeonsteel, TConstruct.ingotLiquidValue), TConstructRegistry.getItemStack("ingotCast"), false, 50); - - TConstructRegistry.instance.getBasinCasting().addCastingRecipe(new ItemStack(block_AeonSteelBlock, 1, 0), new FluidStack(moltenAeonsteel, TConstruct.ingotLiquidValue*9), 100); - - castMolten(moltenAeonsteel, 201); - - PatternBuilder.instance.registerFullMaterial(new ItemStack(item_AeonSteelIngot, 1, 0), 2, "Aeonsteel", new ItemStack(TinkerTools.toolShard, 1, 201), new ItemStack(TinkerTools.toolRod, 1, 201), 201); - - Smeltery.addAlloyMixing(new FluidStack(moltenAeonsteel, 144), new FluidStack[] { new FluidStack(TinkerSmeltery.moltenAlumiteFluid, 144), new FluidStack(TinkerSmeltery.moltenCobaltFluid, 144) }); - //Queen's Gold - TConstructClientRegistry.addMaterialRenderMapping(202, "tinker", "queensgold", true); - TConstructRegistry.addToolMaterial(202, "QueensGold", 3, 100, 500, 2, 1.0F, 0, 0f, GOLD.toString(), 0xeaee57); - TinkerTools.registerPatternMaterial("QueensGoldIngot", 2, "QueensGold"); - TConstructRegistry.addDefaultToolPartMaterial(202); - - Smeltery.addMelting(new ItemStack(item_QueensGoldIngot, 1, 0), block_QueensGoldBlock, 0, 500, new FluidStack(moltenQueensGold, TConstruct.ingotLiquidValue)); - Smeltery.addMelting(block_QueensGoldBlock, 0, 500, new FluidStack(moltenQueensGold, TConstruct.ingotLiquidValue*9)); - - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(item_QueensGoldIngot, 1, 0), new FluidStack(moltenQueensGold, TConstruct.ingotLiquidValue), TConstructRegistry.getItemStack("ingotCast"), false, 50); - - TConstructRegistry.instance.getBasinCasting().addCastingRecipe(new ItemStack(block_QueensGoldBlock, 1, 0), new FluidStack(moltenQueensGold, TConstruct.ingotLiquidValue*9), 100); - - castMolten(moltenQueensGold, 202); - - PatternBuilder.instance.registerFullMaterial(new ItemStack(item_QueensGoldIngot, 1, 0), 2, "QueensGold", new ItemStack(TinkerTools.toolShard, 1, 202), new ItemStack(TinkerTools.toolRod, 1, 202), 202); - - Smeltery.addAlloyMixing(new FluidStack(moltenQueensGold, 144*8), new FluidStack[] { new FluidStack(TinkerSmeltery.moltenGoldFluid, 144*8), new FluidStack(TinkerSmeltery.moltenEmeraldFluid, 80) }); - - // Tool Materials: id, name, harvestlevel, durability, speed, damage, handlemodifier, reinforced, shoddy, style color, primary color for block use - //Dogbearium - TConstructClientRegistry.addMaterialRenderMapping(203, "tinker", "dogbearium", true); - TConstructRegistry.addToolMaterial(203, "Dogbearium", 4, 600, 800, 2, 1.6F, 0, -2f, DARK_RED.toString(), 0x754200); - TinkerTools.registerPatternMaterial("DogbeariumIngot", 2, "Dogbearium"); - TConstructRegistry.addDefaultToolPartMaterial(203); - - Smeltery.addMelting(new ItemStack(item_DogbeariumIngot, 1, 0), block_DogbeariumBlock, 0, 500, new FluidStack(moltenDogbearium, TConstruct.ingotLiquidValue)); - Smeltery.addMelting(block_DogbeariumBlock, 0, 500, new FluidStack(moltenDogbearium, TConstruct.ingotLiquidValue*9)); - - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(item_DogbeariumIngot, 1, 0), new FluidStack(moltenDogbearium, TConstruct.ingotLiquidValue), TConstructRegistry.getItemStack("ingotCast"), false, 50); - - TConstructRegistry.instance.getBasinCasting().addCastingRecipe(new ItemStack(block_DogbeariumBlock, 1, 0), new FluidStack(moltenDogbearium, TConstruct.ingotLiquidValue*9), 100); - - castMolten(moltenDogbearium, 203); - - PatternBuilder.instance.registerFullMaterial(new ItemStack(item_DogbeariumIngot, 1, 0), 2, "Dogbearium", new ItemStack(TinkerTools.toolShard, 1, 203), new ItemStack(TinkerTools.toolRod, 1, 203), 203); - - Smeltery.addAlloyMixing(new FluidStack(moltenDogbearium, 144*2), new FluidStack[] { new FluidStack(TinkerSmeltery.moltenArditeFluid, 144), new FluidStack(TinkerSmeltery.bloodFluid, 160), new FluidStack(TinkerSmeltery.moltenEnderFluid,250) }); - - //Shields - TConstructRegistry.addToolRecipe(tool_roundShield, TinkerTools.largePlate, TinkerTools.toolRod, TinkerTools.frypanHead); - - TConstructRegistry.addToolRecipe(tool_heaterShield, TinkerTools.largePlate, TinkerTools.toughRod, TinkerTools.largePlate, TinkerTools.toughBinding); - - TConstructRegistry.addToolRecipe(tool_wrench, TinkerTools.handGuard, TinkerTools.toolRod, TinkerTools.binding); - +public class TinkersDefense { + + private static int modGuiIndex = 0; + public static final int GUI_ITEM_INV = modGuiIndex++; + + @Instance(Reference.MOD_ID) + public static TinkersDefense instance = new TinkersDefense(); + + public static CreativeTabs tabName = new CreativeTabs("tabName") { + + public Item getTabIconItem() { + return Items.arrow; + } + + }; + + public static final SimpleNetworkWrapper INSTANCE = NetworkRegistry.INSTANCE + .newSimpleChannel(Reference.MOD_ID); + + public static Item item_AeonSteelIngot; + public static Block block_AeonSteelBlock; + + public static Fluid moltenAeonsteel; + public static Block moltenAeonsteelBlock; + + public static Item item_QueensGoldIngot; + public static Block block_QueensGoldBlock; + + public static Fluid moltenQueensGold; + public static Block moltenQueensGoldBlock; + + public static Item item_DogbeariumIngot; + public static Block block_DogbeariumBlock; + + public static Fluid moltenDogbearium; + public static Block moltenDogbeariumBlock; + + public static ToolCore tool_roundShield; + public static ToolCore tool_heaterShield; + public static ToolCore tool_wrench; + + public static Block block_CrestMount; + public static Block block_ArmorAnvil; + public static Block block_JewelersBench; + + public static Item item_TinkerArmor; + public static Item item_Crest_Feathers; + public static Item item_Crest_Blades; + + public static Item item_thread; + public static Item item_glowthread; + public static Item item_cloth; + + public static Pattern woodPattern; + public static Pattern metalPattern; + + public static DynamicToolPart partRivet; + public static DynamicToolPart partArmorplate; + + @SidedProxy(clientSide = "gmail.Lance5057.proxy.ClientProxy", serverSide = "gmail.Lance5057.proxy.CommonProxy") + public static CommonProxy proxy; + + @EventHandler + public void preInit(FMLPreInitializationEvent e) { + PacketHandler.init(); + + block_CrestMount = new CrestMount().setHardness(4.0F) + .setStepSound(Block.soundTypeMetal).setBlockName("CrestMount") + .setCreativeTab(tabName); + + GameRegistry.registerBlock(block_CrestMount, "Block_CrestMount"); + GameRegistry.registerTileEntity(TileEntity_CrestMount.class, + "Tile_CrestMount"); + + GameRegistry.addShapedRecipe(new ItemStack(block_CrestMount), + new Object[] { "xxx", "-i-", "---", 'x', + new ItemStack(TinkerTools.toughRod, 1, 1), 'i', + new ItemStack(TinkerTools.toolRod, 1, 1) }); + + block_ArmorAnvil = new ArmorAnvil().setHardness(4.0F) + .setStepSound(Block.soundTypeAnvil).setBlockName("ArmorAnvil") + .setCreativeTab(tabName); + + GameRegistry.registerBlock(block_ArmorAnvil, "Block_ArmorAnvil"); + GameRegistry.registerTileEntity(TileEntity_ArmorAnvil.class, + "Tile_ArmorAnvil"); + + block_JewelersBench = new JewelersBench().setHardness(4.0F) + .setStepSound(Block.soundTypeWood) + .setBlockName("JewelersBench").setCreativeTab(tabName); + + GameRegistry.registerBlock(block_JewelersBench, "Block_JewelersBench"); + GameRegistry.registerTileEntity(TileEntity_JewelersBench.class, + "Tile_JewelersBench"); + + NetworkRegistry.INSTANCE.registerGuiHandler(TinkersDefense.instance, + new CommonProxy()); + MinecraftForge.EVENT_BUS.register(this); + + // AeonSteel + item_AeonSteelIngot = new AeonSteelIngot().setCreativeTab(tabName) + .setMaxStackSize(64).setUnlocalizedName("AeonSteelIngot") + .setTextureName(Reference.MOD_ID + ":AeonSteelIngot"); + + GameRegistry.registerItem(item_AeonSteelIngot, "AeonSteel Ingot"); + + block_AeonSteelBlock = new AeonSteelBlock(Material.iron) + .setHardness(4.0F).setStepSound(Block.soundTypeMetal) + .setBlockName("AeonSteelBlock").setCreativeTab(tabName) + .setBlockTextureName(Reference.MOD_ID + ":AeonSteelBlock"); + + GameRegistry.registerBlock(block_AeonSteelBlock, "aeonsteelblock"); + + GameRegistry.addShapedRecipe(new ItemStack(block_AeonSteelBlock), + new Object[] { "xxx", "xxx", "xxx", 'x', item_AeonSteelIngot }); + GameRegistry.addShapelessRecipe(new ItemStack(item_AeonSteelIngot, 9), + new Object[] { new ItemStack(block_AeonSteelBlock) }); + + moltenAeonsteel = new Fluid("moltenAeonsteel").setLuminosity(15) + .setDensity(3000).setViscosity(6000).setTemperature(1300); + FluidRegistry.registerFluid(moltenAeonsteel); + + moltenAeonsteelFluid moltenAeonsteelBlock = new moltenAeonsteelFluid( + moltenAeonsteel); + + GameRegistry.registerBlock(moltenAeonsteelBlock, "moltenaeonsteel"); + + // Queen's Gold + item_QueensGoldIngot = new QueensGoldIngot().setCreativeTab(tabName) + .setMaxStackSize(64).setUnlocalizedName("QueensGoldIngot") + .setTextureName(Reference.MOD_ID + ":QueensGoldIngot"); + + GameRegistry.registerItem(item_QueensGoldIngot, "Queen's Gold Ingot"); + + block_QueensGoldBlock = new QueensGoldBlock(Material.iron) + .setHardness(4.0F).setStepSound(Block.soundTypeMetal) + .setBlockName("QueensGoldBlock").setCreativeTab(tabName) + .setBlockTextureName(Reference.MOD_ID + ":QueensGoldBlock"); + + GameRegistry.registerBlock(block_QueensGoldBlock, "QueensGoldblock"); + + GameRegistry + .addShapedRecipe(new ItemStack(block_QueensGoldBlock), + new Object[] { "xxx", "xxx", "xxx", 'x', + item_QueensGoldIngot }); + GameRegistry.addShapelessRecipe(new ItemStack(item_QueensGoldIngot, 9), + new Object[] { new ItemStack(block_QueensGoldBlock) }); + + moltenQueensGold = new Fluid("moltenQueensGold").setLuminosity(15) + .setDensity(3000).setViscosity(6000).setTemperature(1300); + FluidRegistry.registerFluid(moltenQueensGold); + + moltenQueensGoldFluid moltenQueensGoldBlock = new moltenQueensGoldFluid( + moltenQueensGold); + + GameRegistry.registerBlock(moltenQueensGoldBlock, "moltenQueensGold"); + + // Dogbearium + item_DogbeariumIngot = new DogbeariumIngot().setCreativeTab(tabName) + .setMaxStackSize(64).setUnlocalizedName("DogbeariumIngot") + .setTextureName(Reference.MOD_ID + ":DogbeariumIngot"); + + GameRegistry.registerItem(item_DogbeariumIngot, "DogbeariumIngot"); + + block_DogbeariumBlock = new DogbeariumBlock(Material.iron) + .setHardness(4.0F).setStepSound(Block.soundTypeMetal) + .setBlockName("DogbeariumBlock").setCreativeTab(tabName) + .setBlockTextureName(Reference.MOD_ID + ":DogbeariumBlock"); + + GameRegistry.registerBlock(block_DogbeariumBlock, "Dogbeariumblock"); + + GameRegistry + .addShapedRecipe(new ItemStack(block_DogbeariumBlock), + new Object[] { "xxx", "xxx", "xxx", 'x', + item_DogbeariumIngot }); + GameRegistry.addShapelessRecipe(new ItemStack(item_DogbeariumIngot, 9), + new Object[] { new ItemStack(block_DogbeariumBlock) }); + + moltenDogbearium = new Fluid("moltenDogbearium").setLuminosity(15) + .setDensity(3000).setViscosity(6000).setTemperature(1300); + FluidRegistry.registerFluid(moltenDogbearium); + + moltenDogbeariumFluid moltenDogbeariumBlock = new moltenDogbeariumFluid( + moltenDogbearium); + + GameRegistry.registerBlock(moltenDogbeariumBlock, "moltenDogbearium"); + + tool_roundShield = new RoundShield(); + tool_heaterShield = new HeaterShield(); + + tool_wrench = new TinkerWrench(); + + item_Crest_Feathers = new Item().setCreativeTab(tabName) + .setMaxStackSize(1).setUnlocalizedName("Crest_Feathers") + .setTextureName(Reference.MOD_ID + ":Crest_feather"); + + GameRegistry.registerItem(item_Crest_Feathers, "Crest of Feathers"); + GameRegistry.addRecipe(new ItemStack(item_Crest_Feathers), + new Object[] { "---", "f-f", "-o-", 'f', Items.feather, 'o', + Items.iron_ingot }); + + item_Crest_Blades = new Item().setCreativeTab(tabName) + .setMaxStackSize(1).setUnlocalizedName("Crest_Blades") + .setTextureName(Reference.MOD_ID + ":Crest_blades"); + + GameRegistry.registerItem(item_Crest_Blades, "Crest of Blades"); + GameRegistry.addRecipe(new ItemStack(item_Crest_Blades), + new Object[] { "---", "f-f", "-o-", 'f', Items.iron_sword, 'o', + Items.diamond }); + + GameRegistry.registerItem(tool_roundShield, "Round Shield"); + GameRegistry.registerItem(tool_heaterShield, "Heater Shield"); + GameRegistry.registerItem(tool_wrench, "Tinker Wrench"); + TConstructRegistry.addItemToDirectory("Round Shield", tool_roundShield); + TConstructRegistry.addItemToDirectory("Heater Shield", + tool_heaterShield); + TConstructRegistry.addItemToDirectory("Tinker Wrench", tool_wrench); + + GameRegistry.registerItem(item_thread = new Item_Thread(), "thread"); + GameRegistry.registerItem(item_glowthread = new Item_Glowthread(), + "glowthread"); + GameRegistry.registerItem(item_cloth = new Item_Cloth(), "cloth"); + + woodPattern = new TD_Patterns("pattern_", "Pattern"); + metalPattern = new TD_Patterns("cast_", "MetalPattern"); + + GameRegistry.registerItem(woodPattern, "Pattern"); + // TConstructRegistry.addItemToDirectory("woodPattern", woodPattern); + + GameRegistry.registerItem(metalPattern, "Cast"); + + TConstructRegistry.addItemStackToDirectory("rivets Pattern", + new ItemStack(woodPattern, 1, 0)); + TConstructRegistry.addItemStackToDirectory("clasp Pattern", + new ItemStack(woodPattern, 1, 1)); + TConstructRegistry.addItemStackToDirectory("armorplate Pattern", + new ItemStack(woodPattern, 1, 2)); + + // Renderers + proxy.registerRenderers(); + + // item_TinkerArmor = new TinkerArmor(ArmorMaterial.IRON, 4, + // 1).setUnlocalizedName("Tinker_Armor"); + // GameRegistry.registerItem(item_TinkerArmor,"Tinker Armor"); + + // network.registerMessage(messageHandler, requestMessageType, + // discriminator, side); + } + + @EventHandler + public void init(FMLInitializationEvent e) { + System.out.print(Reference.MOD_ID); + PatternBuilder pb = PatternBuilder.instance; + + ModifyBuilder.registerModifier(new modifierDaze("Daze", 5, new ItemStack[] { new ItemStack(Blocks.light_weighted_pressure_plate), new ItemStack(Items.potionitem,1,8202)}, + new int[] {1,0})); + TConstructRegistry.registerActiveToolMod(new TDefenseActiveToolMod()); + + for (ToolCore tool : TConstructRegistry.getToolMapping()) + { + TConstructClientRegistry.addEffectRenderMapping(tool, 19, "tinkersdefense", "daze", false); + System.out.println("test"); + } + + TConstructClientRegistry.toolButtons + .add(TConstructClientRegistry.toolButtons.size(), + new ToolGuiElement( + 1, + 0, + 0, + new int[] { 9, 0, 4, 0 }, + new int[] { 2, 3, 2, 0 }, + StatCollector + .translateToLocal("gui.toolstation.roundshield.name"), + StatCollector + .translateToLocal("gui.toolstation.roundshield.desc"), + "tinkersdefense", "textures/gui/icons.png")); + TConstructClientRegistry.tierTwoButtons + .add(TConstructClientRegistry.tierTwoButtons.size(), + new ToolGuiElement( + 5, + 0, + 0, + new int[] { 9, 8, 9, 9 }, + new int[] { 2, 3, 2, 3 }, + StatCollector + .translateToLocal("gui.toolstation.heatershield.name"), + StatCollector + .translateToLocal("gui.toolstation.heatershield.desc"), + "tinkersdefense", "textures/gui/icons.png")); + + + + // Aeonsteel + pb.registerMaterialSet("AeonSteel", new ItemStack( + TinkerTools.toolShard, 1, 10), new ItemStack( + TinkerTools.toolRod, 1, 10), 10); + + TConstructClientRegistry.addMaterialRenderMapping(201, "tinker", + "aeonsteel", true); + + // Tool Materials: id, name, harvestlevel, durability, speed, damage, + // handlemodifier, reinforced, shoddy, style color, primary color for + // block use + TConstructRegistry.addToolMaterial(201, "AeonSteel", 4, 822, 1100, 3, + 1.6F, 2, 0f, LIGHT_PURPLE.toString(), 0xb565e6); + TinkerTools.registerPatternMaterial("AeonSteelIngot", 2, "AeonSteel"); + TConstructRegistry.addDefaultToolPartMaterial(201); + + Smeltery.addMelting(new ItemStack(item_AeonSteelIngot, 1, 0), + block_AeonSteelBlock, 0, 500, new FluidStack(moltenAeonsteel, + TConstruct.ingotLiquidValue)); + Smeltery.addMelting(block_AeonSteelBlock, 0, 500, new FluidStack( + moltenAeonsteel, TConstruct.ingotLiquidValue * 9)); + + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(item_AeonSteelIngot, 1, 0), + new FluidStack(moltenAeonsteel, TConstruct.ingotLiquidValue), + TConstructRegistry.getItemStack("ingotCast"), false, 50); + + TConstructRegistry.instance.getBasinCasting() + .addCastingRecipe( + new ItemStack(block_AeonSteelBlock, 1, 0), + new FluidStack(moltenAeonsteel, + TConstruct.ingotLiquidValue * 9), 100); + + castMolten(moltenAeonsteel, 201); + + PatternBuilder.instance.registerFullMaterial(new ItemStack( + item_AeonSteelIngot, 1, 0), 2, "Aeonsteel", new ItemStack( + TinkerTools.toolShard, 1, 201), new ItemStack( + TinkerTools.toolRod, 1, 201), 201); + + Smeltery.addAlloyMixing(new FluidStack(moltenAeonsteel, 144), + new FluidStack[] { + new FluidStack(TinkerSmeltery.moltenAlumiteFluid, 144), + new FluidStack(TinkerSmeltery.moltenCobaltFluid, 144) }); + // Queen's Gold + TConstructClientRegistry.addMaterialRenderMapping(202, "tinker", + "queensgold", true); + TConstructRegistry.addToolMaterial(202, "QueensGold", 3, 100, 500, 2, + 1.0F, 0, 0f, GOLD.toString(), 0xeaee57); + TinkerTools.registerPatternMaterial("QueensGoldIngot", 2, "QueensGold"); + TConstructRegistry.addDefaultToolPartMaterial(202); + + Smeltery.addMelting(new ItemStack(item_QueensGoldIngot, 1, 0), + block_QueensGoldBlock, 0, 500, new FluidStack(moltenQueensGold, + TConstruct.ingotLiquidValue)); + Smeltery.addMelting(block_QueensGoldBlock, 0, 500, new FluidStack( + moltenQueensGold, TConstruct.ingotLiquidValue * 9)); + + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(item_QueensGoldIngot, 1, 0), + new FluidStack(moltenQueensGold, TConstruct.ingotLiquidValue), + TConstructRegistry.getItemStack("ingotCast"), false, 50); + + TConstructRegistry.instance.getBasinCasting().addCastingRecipe( + new ItemStack(block_QueensGoldBlock, 1, 0), + new FluidStack(moltenQueensGold, + TConstruct.ingotLiquidValue * 9), 100); + + castMolten(moltenQueensGold, 202); + + PatternBuilder.instance.registerFullMaterial(new ItemStack( + item_QueensGoldIngot, 1, 0), 2, "QueensGold", new ItemStack( + TinkerTools.toolShard, 1, 202), new ItemStack( + TinkerTools.toolRod, 1, 202), 202); + + Smeltery.addAlloyMixing( + new FluidStack(moltenQueensGold, 144 * 8), + new FluidStack[] { + new FluidStack(TinkerSmeltery.moltenGoldFluid, 144 * 8), + new FluidStack(TinkerSmeltery.moltenEmeraldFluid, 80) }); + + // Tool Materials: id, name, harvestlevel, durability, speed, damage, + // handlemodifier, reinforced, shoddy, style color, primary color for + // block use + // Dogbearium + TConstructClientRegistry.addMaterialRenderMapping(203, "tinker", + "dogbearium", true); + TConstructRegistry.addToolMaterial(203, "Dogbearium", 4, 600, 800, 2, + 1.6F, 0, -2f, DARK_RED.toString(), 0x754200); + TinkerTools.registerPatternMaterial("DogbeariumIngot", 2, "Dogbearium"); + TConstructRegistry.addDefaultToolPartMaterial(203); + + Smeltery.addMelting(new ItemStack(item_DogbeariumIngot, 1, 0), + block_DogbeariumBlock, 0, 500, new FluidStack(moltenDogbearium, + TConstruct.ingotLiquidValue)); + Smeltery.addMelting(block_DogbeariumBlock, 0, 500, new FluidStack( + moltenDogbearium, TConstruct.ingotLiquidValue * 9)); + + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(item_DogbeariumIngot, 1, 0), + new FluidStack(moltenDogbearium, TConstruct.ingotLiquidValue), + TConstructRegistry.getItemStack("ingotCast"), false, 50); + + TConstructRegistry.instance.getBasinCasting().addCastingRecipe( + new ItemStack(block_DogbeariumBlock, 1, 0), + new FluidStack(moltenDogbearium, + TConstruct.ingotLiquidValue * 9), 100); + + castMolten(moltenDogbearium, 203); + + PatternBuilder.instance.registerFullMaterial(new ItemStack( + item_DogbeariumIngot, 1, 0), 2, "Dogbearium", new ItemStack( + TinkerTools.toolShard, 1, 203), new ItemStack( + TinkerTools.toolRod, 1, 203), 203); + + Smeltery.addAlloyMixing(new FluidStack(moltenDogbearium, 144 * 2), + new FluidStack[] { + new FluidStack(TinkerSmeltery.moltenArditeFluid, 144), + new FluidStack(TinkerSmeltery.bloodFluid, 160), + new FluidStack(TinkerSmeltery.moltenEnderFluid, 250) }); + + // Shields + TConstructRegistry.addToolRecipe(tool_roundShield, + TinkerTools.largePlate, TinkerTools.toolRod, + TinkerTools.frypanHead); + + TConstructRegistry.addToolRecipe(tool_heaterShield, + TinkerTools.largePlate, TinkerTools.toughRod, + TinkerTools.largePlate, TinkerTools.toughBinding); + + TConstructRegistry.addToolRecipe(tool_wrench, TinkerTools.handGuard, + TinkerTools.toolRod, TinkerTools.binding); + StencilBuilder.registerStencil(50, woodPattern, 0); // rivets StencilBuilder.registerStencil(51, woodPattern, 1); // spike StencilBuilder.registerStencil(52, woodPattern, 2); // armorplate - + PatternBuilder.instance.addToolPattern(woodPattern); - - + partRivet = new DynamicToolPart("_rivets", "Rivets"); GameRegistry.registerItem(partRivet, "RivetPart"); - + partArmorplate = new DynamicToolPart("_armorplate", "Armor Plate"); GameRegistry.registerItem(partArmorplate, "ArmorPlatePart"); buildParts(partRivet, 0); - //buildParts(clasp, 1); + // buildParts(clasp, 1); buildParts(partArmorplate, 2); -} - -@EventHandler -public void postInit(FMLPostInitializationEvent e) -{ - TConstructClientRegistry.toolButtons.add(TConstructClientRegistry.toolButtons.size(), - new ToolGuiElement(1, 0, 0, new int[] { 9, 0, 4, 0 }, new int[] { 2, 3, 2, 0 }, StatCollector.translateToLocal("gui.toolstation.roundshield.name"), StatCollector.translateToLocal("gui.toolstation.roundshield.desc"), "tinkersdefense", "textures/gui/icons.png")); - TConstructClientRegistry.tierTwoButtons.add(TConstructClientRegistry.tierTwoButtons.size(), - new ToolGuiElement(5, 0, 0, new int[] { 9, 8, 9, 9 }, new int[] { 2, 3, 2, 3 }, StatCollector.translateToLocal("gui.toolstation.heatershield.name"), StatCollector.translateToLocal("gui.toolstation.heatershield.desc"), "tinkersdefense", "textures/gui/icons.png")); -} - -public void castMolten(Fluid fluid, int ID) -{ - //.addCastingRecipe(output, fluid, cast, hardeningDelay) - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.toolRod, 1, ID),new FluidStack(fluid, (int) (144*0.5D)), TConstructRegistry.getItemStack("toolRodCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.pickaxeHead, 1, ID),new FluidStack(fluid, (int) (144*1.0D)), TConstructRegistry.getItemStack("pickaxeHeadCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.shovelHead, 1, ID),new FluidStack(fluid, (int) (144*1.0D)), TConstructRegistry.getItemStack("shovelHeadCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.hatchetHead, 1, ID),new FluidStack(fluid, (int) (144*1.0D)), TConstructRegistry.getItemStack("hatchetHeadCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.swordBlade, 1, ID),new FluidStack(fluid, (int) (144*1.0D)), TConstructRegistry.getItemStack("swordBladeCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.fullGuard, 1, ID),new FluidStack(fluid, (int) (144*1.0D)), TConstructRegistry.getItemStack("fullGuardCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.wideGuard, 1, ID),new FluidStack(fluid, (int) (144*0.5D)), TConstructRegistry.getItemStack("wideGuardCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.crossbar, 1, ID),new FluidStack(fluid, (int) (144*0.5D)), TConstructRegistry.getItemStack("crossbarCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.binding, 1, ID),new FluidStack(fluid, (int) (144*0.5D)), TConstructRegistry.getItemStack("bindingCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.handGuard, 1, ID),new FluidStack(fluid, (int) (144*0.5D)), TConstructRegistry.getItemStack("handGuardCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.frypanHead, 1, ID),new FluidStack(fluid, (int) (144*1.0D)), TConstructRegistry.getItemStack("frypanHeadCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.signHead, 1, ID),new FluidStack(fluid, (int) (144*1.0D)), TConstructRegistry.getItemStack("signHeadCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.knifeBlade, 1, ID),new FluidStack(fluid, (int) (144*0.5D)), TConstructRegistry.getItemStack("knifeBladeCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.chiselHead, 1, ID),new FluidStack(fluid, (int) (144*0.5D)), TConstructRegistry.getItemStack("chiselHeadCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.toughRod, 1, ID),new FluidStack(fluid, (int) (144*3.0D)), TConstructRegistry.getItemStack("toughRodCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.toughBinding, 1, ID),new FluidStack(fluid, (int) (144*3.0D)), TConstructRegistry.getItemStack("toughBindingCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.largePlate, 1, ID),new FluidStack(fluid, (int) (144*8.0D)), TConstructRegistry.getItemStack("largePlateCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.broadAxeHead, 1, ID),new FluidStack(fluid, (int) (144*8.0D)), TConstructRegistry.getItemStack("broadAxeHeadCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.scytheBlade, 1, ID),new FluidStack(fluid, (int) (144*8.0D)), TConstructRegistry.getItemStack("scytheHeadCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.excavatorHead, 1, ID),new FluidStack(fluid, (int) (144*8.0D)), TConstructRegistry.getItemStack("excavatorHeadCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.largeSwordBlade, 1, ID),new FluidStack(fluid, (int) (144*8.0D)), TConstructRegistry.getItemStack("largeBladeCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.hammerHead, 1, ID),new FluidStack(fluid, (int) (144*8.0D)), TConstructRegistry.getItemStack("hammerHeadCast"),50); - TConstructRegistry.instance.getTableCasting().addCastingRecipe(new ItemStack(TinkerTools.arrowhead, 1, ID),new FluidStack(fluid, (int) (144*1.0D)), TConstructRegistry.getItemStack("arrowheadCast"),50); - - -} - -public void buildParts(Item item, int meta) -{ - int[] nonMetals = { 0, 1, 3, 4, 5, 6, 7, 8, 9, 17 }; - int[] liquidDamage = new int[] { 2, 13, 10, 11, 12, 14, 15, 6, 16, 18 }; - - for (int mat = 0; mat < nonMetals.length; mat++) - { - TConstructRegistry.addPartMapping(woodPattern, meta, mat, new ItemStack(item, 1, mat)); } - LiquidCasting tableCasting = TConstructRegistry.getTableCasting(); - //patternOutputs = new Item[] { partShuriken, partCrossbowLimb, partCrossbowBody, partBowLimb }; - - ItemStack cast = new ItemStack(metalPattern, 1, meta); - - tableCasting.addCastingRecipe(cast, new FluidStack(TinkerSmeltery.moltenAlubrassFluid, TConstruct.ingotLiquidValue), new ItemStack(item, 1, Short.MAX_VALUE), false, 50); - tableCasting.addCastingRecipe(cast, new FluidStack(TinkerSmeltery.moltenGoldFluid, TConstruct.ingotLiquidValue * 2), new ItemStack(item, 1, Short.MAX_VALUE), false, 50); - - for (int iterTwo = 0; iterTwo < TinkerSmeltery.liquids.length; iterTwo++) - { - Fluid fs = TinkerSmeltery.liquids[iterTwo].getFluid(); - int fluidAmount = metalPattern.getPatternCost(cast) * TConstruct.ingotLiquidValue / 2; - ItemStack metalCast = new ItemStack(item, 1, liquidDamage[iterTwo]); - tableCasting.addCastingRecipe(metalCast, new FluidStack(fs, fluidAmount), cast, 50); - Smeltery.addMelting(FluidType.getFluidType(fs), metalCast, 0, fluidAmount); - } -} + @EventHandler + public void postInit(FMLPostInitializationEvent e) { +// ItemStack ironlongsword = ToolBuilder.instance.buildTool(new ItemStack(TinkerTools.swordBlade, 1, 6), new ItemStack(TinkerTools.toolRod, 1, 2), new ItemStack(TinkerTools.handGuard, 1, 10), ""); +// MantleClientRegistry.registerManualIcon("ironlongsword", ironlongsword); +// +// TConstructClientRegistry.registerManualModifier("dazemod", ironlongsword.copy(), new ItemStack(Items.fermented_spider_eye)); +// + } + + public void castMolten(Fluid fluid, int ID) { + // .addCastingRecipe(output, fluid, cast, hardeningDelay) + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.toolRod, 1, ID), + new FluidStack(fluid, (int) (144 * 0.5D)), + TConstructRegistry.getItemStack("toolRodCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.pickaxeHead, 1, ID), + new FluidStack(fluid, (int) (144 * 1.0D)), + TConstructRegistry.getItemStack("pickaxeHeadCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.shovelHead, 1, ID), + new FluidStack(fluid, (int) (144 * 1.0D)), + TConstructRegistry.getItemStack("shovelHeadCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.hatchetHead, 1, ID), + new FluidStack(fluid, (int) (144 * 1.0D)), + TConstructRegistry.getItemStack("hatchetHeadCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.swordBlade, 1, ID), + new FluidStack(fluid, (int) (144 * 1.0D)), + TConstructRegistry.getItemStack("swordBladeCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.fullGuard, 1, ID), + new FluidStack(fluid, (int) (144 * 1.0D)), + TConstructRegistry.getItemStack("fullGuardCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.wideGuard, 1, ID), + new FluidStack(fluid, (int) (144 * 0.5D)), + TConstructRegistry.getItemStack("wideGuardCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.crossbar, 1, ID), + new FluidStack(fluid, (int) (144 * 0.5D)), + TConstructRegistry.getItemStack("crossbarCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.binding, 1, ID), + new FluidStack(fluid, (int) (144 * 0.5D)), + TConstructRegistry.getItemStack("bindingCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.handGuard, 1, ID), + new FluidStack(fluid, (int) (144 * 0.5D)), + TConstructRegistry.getItemStack("handGuardCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.frypanHead, 1, ID), + new FluidStack(fluid, (int) (144 * 1.0D)), + TConstructRegistry.getItemStack("frypanHeadCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.signHead, 1, ID), + new FluidStack(fluid, (int) (144 * 1.0D)), + TConstructRegistry.getItemStack("signHeadCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.knifeBlade, 1, ID), + new FluidStack(fluid, (int) (144 * 0.5D)), + TConstructRegistry.getItemStack("knifeBladeCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.chiselHead, 1, ID), + new FluidStack(fluid, (int) (144 * 0.5D)), + TConstructRegistry.getItemStack("chiselHeadCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.toughRod, 1, ID), + new FluidStack(fluid, (int) (144 * 3.0D)), + TConstructRegistry.getItemStack("toughRodCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.toughBinding, 1, ID), + new FluidStack(fluid, (int) (144 * 3.0D)), + TConstructRegistry.getItemStack("toughBindingCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.largePlate, 1, ID), + new FluidStack(fluid, (int) (144 * 8.0D)), + TConstructRegistry.getItemStack("largePlateCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.broadAxeHead, 1, ID), + new FluidStack(fluid, (int) (144 * 8.0D)), + TConstructRegistry.getItemStack("broadAxeHeadCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.scytheBlade, 1, ID), + new FluidStack(fluid, (int) (144 * 8.0D)), + TConstructRegistry.getItemStack("scytheHeadCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.excavatorHead, 1, ID), + new FluidStack(fluid, (int) (144 * 8.0D)), + TConstructRegistry.getItemStack("excavatorHeadCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.largeSwordBlade, 1, ID), + new FluidStack(fluid, (int) (144 * 8.0D)), + TConstructRegistry.getItemStack("largeBladeCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.hammerHead, 1, ID), + new FluidStack(fluid, (int) (144 * 8.0D)), + TConstructRegistry.getItemStack("hammerHeadCast"), 50); + TConstructRegistry.instance.getTableCasting().addCastingRecipe( + new ItemStack(TinkerTools.arrowhead, 1, ID), + new FluidStack(fluid, (int) (144 * 1.0D)), + TConstructRegistry.getItemStack("arrowheadCast"), 50); + + } + + public void buildParts(Item item, int meta) { + int[] nonMetals = { 0, 1, 3, 4, 5, 6, 7, 8, 9, 17 }; + int[] liquidDamage = new int[] { 2, 13, 10, 11, 12, 14, 15, 6, 16, 18 }; + + for (int mat = 0; mat < nonMetals.length; mat++) { + TConstructRegistry.addPartMapping(woodPattern, meta, mat, + new ItemStack(item, 1, mat)); + } + + LiquidCasting tableCasting = TConstructRegistry.getTableCasting(); + // patternOutputs = new Item[] { partShuriken, partCrossbowLimb, + // partCrossbowBody, partBowLimb }; + + ItemStack cast = new ItemStack(metalPattern, 1, meta); + + tableCasting.addCastingRecipe(cast, + new FluidStack(TinkerSmeltery.moltenAlubrassFluid, + TConstruct.ingotLiquidValue), new ItemStack(item, 1, + Short.MAX_VALUE), false, 50); + tableCasting.addCastingRecipe(cast, + new FluidStack(TinkerSmeltery.moltenGoldFluid, + TConstruct.ingotLiquidValue * 2), new ItemStack(item, + 1, Short.MAX_VALUE), false, 50); + + for (int iterTwo = 0; iterTwo < TinkerSmeltery.liquids.length; iterTwo++) { + Fluid fs = TinkerSmeltery.liquids[iterTwo].getFluid(); + int fluidAmount = metalPattern.getPatternCost(cast) + * TConstruct.ingotLiquidValue / 2; + ItemStack metalCast = new ItemStack(item, 1, liquidDamage[iterTwo]); + tableCasting.addCastingRecipe(metalCast, new FluidStack(fs, + fluidAmount), cast, 50); + Smeltery.addMelting(FluidType.getFluidType(fs), metalCast, 0, + fluidAmount); + } + } }
\ No newline at end of file diff --git a/src/main/java/gmail/Lance5057/items/TinkerArmor.java b/src/main/java/gmail/Lance5057/items/TinkerArmor.java index 0f1aa18..b4be050 100644 --- a/src/main/java/gmail/Lance5057/items/TinkerArmor.java +++ b/src/main/java/gmail/Lance5057/items/TinkerArmor.java @@ -10,67 +10,65 @@ import net.minecraft.item.ItemArmor; import net.minecraft.item.ItemStack; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -public class TinkerArmor extends ItemArmor -{ - public TinkerArmor(ArmorMaterial par2EnumArmorMaterial, int par3, int par4) - { + +public class TinkerArmor extends ItemArmor { + public TinkerArmor(ArmorMaterial par2EnumArmorMaterial, int par3, int par4) { super(par2EnumArmorMaterial, par3, par4); } - - @Override - @SideOnly(Side.CLIENT) public void registerIcons(IIconRegister par1IconRegister) - { + + @Override + @SideOnly(Side.CLIENT) + public void registerIcons(IIconRegister par1IconRegister) { String itemName = "tinkersdefense:textures/armor/TinkerArmor"; - this.itemIcon = par1IconRegister.registerIcon(itemName); + this.itemIcon = par1IconRegister.registerIcon(itemName); } - - @Override - public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type) - { + + @Override + public String getArmorTexture(ItemStack stack, Entity entity, int slot, + String type) { return "tinkersdefense:textures/armor/TinkerArmor.png"; - } - + } + @Override - @SideOnly(Side.CLIENT) public ModelBiped getArmorModel(EntityLivingBase entityLiving, ItemStack itemStack, int armorSlot) - { + @SideOnly(Side.CLIENT) + public ModelBiped getArmorModel(EntityLivingBase entityLiving, + ItemStack itemStack, int armorSlot) { ModelBiped armorModel = null; - if(itemStack != null) - { - if(itemStack.getItem() instanceof TinkerArmor) - { - int type = ((ItemArmor)itemStack.getItem()).armorType; - if(type == 1 || type == 3) - { + if (itemStack != null) { + if (itemStack.getItem() instanceof TinkerArmor) { + int type = ((ItemArmor) itemStack.getItem()).armorType; + if (type == 1 || type == 3) { armorModel = TinkersDefense.proxy.getArmorModel(0); + } else { + armorModel = TinkersDefense.proxy.getArmorModel(1); } - else - { - armorModel = TinkersDefense.proxy.getArmorModel(1); - } - - } - if(armorModel != null) - { + + } + if (armorModel != null) { armorModel.bipedHead.showModel = armorSlot == 0; armorModel.bipedHeadwear.showModel = armorSlot == 0; - armorModel.bipedBody.showModel = armorSlot == 1 || armorSlot == 2; armorModel.bipedRightArm.showModel = armorSlot == 1; + armorModel.bipedBody.showModel = armorSlot == 1 + || armorSlot == 2; + armorModel.bipedRightArm.showModel = armorSlot == 1; armorModel.bipedLeftArm.showModel = armorSlot == 1; - armorModel.bipedRightLeg.showModel = armorSlot == 2 || armorSlot == 3; - armorModel.bipedLeftLeg.showModel = armorSlot == 2 || armorSlot == 3; + armorModel.bipedRightLeg.showModel = armorSlot == 2 + || armorSlot == 3; + armorModel.bipedLeftLeg.showModel = armorSlot == 2 + || armorSlot == 3; armorModel.isSneak = entityLiving.isSneaking(); armorModel.isRiding = entityLiving.isRiding(); armorModel.isChild = entityLiving.isChild(); - armorModel.heldItemRight = entityLiving.getHeldItem() != null ? 1 :0; - - if(entityLiving instanceof EntityPlayer) - { - armorModel.aimedBow =((EntityPlayer)entityLiving).getItemInUseDuration() > 2; - } + armorModel.heldItemRight = entityLiving.getHeldItem() != null ? 1 + : 0; + + if (entityLiving instanceof EntityPlayer) { + armorModel.aimedBow = ((EntityPlayer) entityLiving) + .getItemInUseDuration() > 2; + } return armorModel; } } - return armorModel; + return armorModel; } - - + }
\ No newline at end of file diff --git a/src/main/java/gmail/Lance5057/items/tools/HeaterShield.java b/src/main/java/gmail/Lance5057/items/tools/HeaterShield.java index 9d6395e..8455bc2 100644 --- a/src/main/java/gmail/Lance5057/items/tools/HeaterShield.java +++ b/src/main/java/gmail/Lance5057/items/tools/HeaterShield.java @@ -24,226 +24,235 @@ import tconstruct.tools.TinkerTools; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; - -public class HeaterShield extends Shield -{ +public class HeaterShield extends Shield { int induceDamage = 0; -public HeaterShield() -{ -super(0); -this.setUnlocalizedName("heatershield"); -} -@Override -public Item getHeadItem () -{ -return TinkerTools.largePlate; -} -@Override -public Item getHandleItem () -{ -return TinkerTools.toughRod; -} -@Override -public Item getAccessoryItem () -{ -return TinkerTools.largePlate; -} -@Override -public Item getExtraItem () -{ - return TinkerTools.toughBinding; -} -@Override -public int durabilityTypeAccessory () -{ -return 2; -} -@Override -public float getRepairCost () -{ -return 4.0f; -} -@Override -public float getDurabilityModifier () -{ -return 2.5f; -} -@Override -public float breakSpeedModifier () -{ -return 0.4f; -} -@Override -public float getDamageModifier () -{ -return 1.4f; -} -@SideOnly(Side.CLIENT) -@Override -public int getPartAmount () -{ -return 4; -} -@Override -public String getIconSuffix (int partType) -{ -switch (partType) -{ -case 0: -return "_shield_face"; -case 1: -return "_shield_face_broken"; -case 2: -return "_shield_edge"; -case 3: -return "_shield_face_other"; -case 4: -return "_shield_binding"; -default: -return ""; -} -} -@Override -public String getEffectSuffix () -{ -return "_shield_effect"; -} -@Override -public String getDefaultFolder () -{ -return "heatershield"; -} -/* tool_TinkerShield specific */ -@Override -public boolean onLeftClickEntity (ItemStack stack, EntityPlayer player, Entity entity) -{ -if (AbilityHelper.onLeftClickEntity(stack, player, entity, this)) -{ -entity.hurtResistantTime += 7; -/* -* if (entity instanceof EntityLiving) { EntityLiving living = -* (EntityLiving) entity; if (living.getHealth() <= 0) { -* -* } } -*/ -// if (entity.getHealth() <= 0) -} -return true; -} -@Override -public void onUpdate (ItemStack stack, World world, Entity entity, int par4, boolean par5) -{ -super.onUpdate(stack, world, entity, par4, par5); - -} - -@Override -public int getArrowCount(ItemStack stack) -{ - if(stack.hasTagCompound() && stack.getTagCompound().hasKey("arrows")) - { - return stack.getTagCompound().getShort("arrows"); - } - else - return 0; -} -@Override -public void setArrowCount(ItemStack stack, int count) -{ - if(!stack.hasTagCompound()){ - stack.setTagCompound(new NBTTagCompound()); - } - //Should never happen, you would need A LOT of arrows for this to happen - if(count > Short.MAX_VALUE){ - count = Short.MAX_VALUE; - } - stack.getTagCompound().setShort("arrows", (short)count); -} -@Override -public boolean catchArrow(ItemStack shield, EntityPlayer player, IProjectile arrow) -{ - if(arrow instanceof EntityArrow) - { - setArrowCount(shield, getArrowCount(shield)+1); - player.setArrowCountInEntity(player.getArrowCountInEntity() - 1); - ((EntityArrow)arrow).setDead(); + + public HeaterShield() { + super(0); + this.setUnlocalizedName("heatershield"); + } + + @Override + public Item getHeadItem() { + return TinkerTools.largePlate; + } + + @Override + public Item getHandleItem() { + return TinkerTools.toughRod; + } + + @Override + public Item getAccessoryItem() { + return TinkerTools.largePlate; + } + + @Override + public Item getExtraItem() { + return TinkerTools.toughBinding; + } + + @Override + public int durabilityTypeAccessory() { + return 2; + } + + @Override + public float getRepairCost() { + return 4.0f; + } + + @Override + public float getDurabilityModifier() { + return 2.5f; + } + + @Override + public float breakSpeedModifier() { + return 0.4f; + } + + @Override + public float getDamageModifier() { + return 1.4f; + } + + @SideOnly(Side.CLIENT) + @Override + public int getPartAmount() { + return 4; + } + + @Override + public String getIconSuffix(int partType) { + switch (partType) { + case 0: + return "_shield_face"; + case 1: + return "_shield_face_broken"; + case 2: + return "_shield_edge"; + case 3: + return "_shield_face_other"; + case 4: + return "_shield_binding"; + default: + return ""; + } + } + + @Override + public String getEffectSuffix() { + return "_shield_effect"; + } + + @Override + public String getDefaultFolder() { + return "heatershield"; + } + + /* tool_TinkerShield specific */ + @Override + public boolean onLeftClickEntity(ItemStack stack, EntityPlayer player, + Entity entity) { + if (AbilityHelper.onLeftClickEntity(stack, player, entity, this)) { + entity.hurtResistantTime += 7; + /* + * if (entity instanceof EntityLiving) { EntityLiving living = + * (EntityLiving) entity; if (living.getHealth() <= 0) { + * + * } } + */ + // if (entity.getHealth() <= 0) + } return true; } - return false; -} -@Override -public boolean sheatheOnBack(ItemStack arg0) { - return true; -} -@Override -public void blockAnimation(EntityPlayer player, float dmg) -{ - player.worldObj.playSoundAtEntity(player, "battlegear2:shield", 1, 1); -} -@Override -public boolean canBlock(ItemStack shield, DamageSource source) { - return !source.isUnblockable(); -} -@Override -public int getBashTimer(ItemStack arg0) { - // TODO Auto-generated method stub - return 10; -} -@Override -public float getBlockAngle(ItemStack arg0) { - // TODO Auto-generated method stub - return 60; -} -@Override -public float getDamageDecayRate(ItemStack shield, float amount) -{ - return 0; -} -@Override -public float getDamageReduction(ItemStack arg0, DamageSource arg1) { - return 1f; -} -@Override -public float getDecayRate(ItemStack stack) -{ - NBTTagCompound tags = stack.getTagCompound(); - float recovery = tags.getCompoundTag("InfiTool").getInteger("MiningSpeed") / 1.5f; - return 10f / recovery; -} -@Override -public float getRecoveryRate(ItemStack stack) -{ - NBTTagCompound tags = stack.getTagCompound(); - float recovery = tags.getCompoundTag("InfiTool").getInteger("MiningSpeed") / 1.5f; - return 10f / recovery; -} - -@Override -@SideOnly(Side.CLIENT) -public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4) -{ - NBTTagCompound tags = par1ItemStack.getTagCompound(); - super.addInformation(par1ItemStack, par2EntityPlayer, par3List, par4); - par3List.add(""); - par3List.add(EnumChatFormatting.DARK_GREEN+ - ItemStack.field_111284_a.format( 1F / (10f / (tags.getCompoundTag("InfiTool").getInteger("MiningSpeed")/1.5f)) / 20F)+ - StatCollector.translateToLocal("attribute.shield.block.time")); - int arrowCount = getArrowCount(par1ItemStack); - if(arrowCount > 0) - { - par3List.add(String.format("%s%s %s", EnumChatFormatting.GOLD, arrowCount, StatCollector.translateToLocal("attribute.shield.arrow.count"))); - } -} -@Override -protected Material[] getEffectiveMaterials () -{ - return materials; -} - static Material[] materials = new Material[] { Material.rock, Material.iron, Material.ice, Material.glass, Material.piston, Material.anvil, Material.circuits }; - -@Override -protected String getHarvestType() { - // TODO Auto-generated method stub - return "pickaxe"; -} + + @Override + public void onUpdate(ItemStack stack, World world, Entity entity, int par4, + boolean par5) { + super.onUpdate(stack, world, entity, par4, par5); + + } + + @Override + public int getArrowCount(ItemStack stack) { + if (stack.hasTagCompound() && stack.getTagCompound().hasKey("arrows")) { + return stack.getTagCompound().getShort("arrows"); + } else + return 0; + } + + @Override + public void setArrowCount(ItemStack stack, int count) { + if (!stack.hasTagCompound()) { + stack.setTagCompound(new NBTTagCompound()); + } + // Should never happen, you would need A LOT of arrows for this to + // happen + if (count > Short.MAX_VALUE) { + count = Short.MAX_VALUE; + } + stack.getTagCompound().setShort("arrows", (short) count); + } + + @Override + public boolean catchArrow(ItemStack shield, EntityPlayer player, + IProjectile arrow) { + if (arrow instanceof EntityArrow) { + setArrowCount(shield, getArrowCount(shield) + 1); + player.setArrowCountInEntity(player.getArrowCountInEntity() - 1); + ((EntityArrow) arrow).setDead(); + return true; + } + return false; + } + + @Override + public boolean sheatheOnBack(ItemStack arg0) { + return true; + } + + @Override + public void blockAnimation(EntityPlayer player, float dmg) { + player.worldObj.playSoundAtEntity(player, "battlegear2:shield", 1, 1); + } + + @Override + public boolean canBlock(ItemStack shield, DamageSource source) { + return !source.isUnblockable(); + } + + @Override + public int getBashTimer(ItemStack arg0) { + // TODO Auto-generated method stub + return 10; + } + + @Override + public float getBlockAngle(ItemStack arg0) { + // TODO Auto-generated method stub + return 60; + } + + @Override + public float getDamageDecayRate(ItemStack shield, float amount) { + return 0; + } + + @Override + public float getDamageReduction(ItemStack arg0, DamageSource arg1) { + return 1f; + } + + @Override + public float getDecayRate(ItemStack stack) { + NBTTagCompound tags = stack.getTagCompound(); + float recovery = tags.getCompoundTag("InfiTool").getInteger( + "MiningSpeed") / 1.5f; + return 10f / recovery; + } + + @Override + public float getRecoveryRate(ItemStack stack) { + NBTTagCompound tags = stack.getTagCompound(); + float recovery = tags.getCompoundTag("InfiTool").getInteger( + "MiningSpeed") / 1.5f; + return 10f / recovery; + } + + @Override + @SideOnly(Side.CLIENT) + public void addInformation(ItemStack par1ItemStack, + EntityPlayer par2EntityPlayer, List par3List, boolean par4) { + NBTTagCompound tags = par1ItemStack.getTagCompound(); + super.addInformation(par1ItemStack, par2EntityPlayer, par3List, par4); + par3List.add(""); + par3List.add(EnumChatFormatting.DARK_GREEN + + ItemStack.field_111284_a + .format(1F / (10f / (tags.getCompoundTag("InfiTool") + .getInteger("MiningSpeed") / 1.5f)) / 20F) + + StatCollector.translateToLocal("attribute.shield.block.time")); + int arrowCount = getArrowCount(par1ItemStack); + if (arrowCount > 0) { + par3List.add(String.format("%s%s %s", EnumChatFormatting.GOLD, + arrowCount, StatCollector + .translateToLocal("attribute.shield.arrow.count"))); + } + } + + @Override + protected Material[] getEffectiveMaterials() { + return materials; + } + + static Material[] materials = new Material[] { Material.rock, + Material.iron, Material.ice, Material.glass, Material.piston, + Material.anvil, Material.circuits }; + + @Override + protected String getHarvestType() { + // TODO Auto-generated method stub + return "pickaxe"; + } }
\ No newline at end of file diff --git a/src/main/java/gmail/Lance5057/items/tools/TinkerWrench.java b/src/main/java/gmail/Lance5057/items/tools/TinkerWrench.java index bf541a5..7ac7799 100644 --- a/src/main/java/gmail/Lance5057/items/tools/TinkerWrench.java +++ b/src/main/java/gmail/Lance5057/items/tools/TinkerWrench.java @@ -26,93 +26,98 @@ import tconstruct.tools.TinkerTools; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; - -public class TinkerWrench extends Weapon implements IToolWrench -{ +public class TinkerWrench extends Weapon implements IToolWrench { int induceDamage = 0; - - public TinkerWrench() - { - super(0); - this.setUnlocalizedName("tinkerwrench"); + + public TinkerWrench() { + super(0); + this.setUnlocalizedName("tinkerwrench"); } + @Override - public Item getHeadItem () - { - return TinkerTools.handGuard; + public Item getHeadItem() { + return TinkerTools.handGuard; } + @Override - public Item getHandleItem () - { - return TinkerTools.toolRod; + public Item getHandleItem() { + return TinkerTools.toolRod; } + @Override - public Item getAccessoryItem () - { - return TinkerTools.binding; + public Item getAccessoryItem() { + return TinkerTools.binding; } + @Override - public int durabilityTypeAccessory () - { - return 2; + public int durabilityTypeAccessory() { + return 2; } + @Override - public float getRepairCost () - { - return 1.0f; + public float getRepairCost() { + return 1.0f; } + @Override - public float getDurabilityModifier () - { - return 2.5f; + public float getDurabilityModifier() { + return 0.1f; } + @Override - public float getDamageModifier () - { - return 0.4f; + public float getDamageModifier() { + return 0.4f; } + @SideOnly(Side.CLIENT) @Override - public int getPartAmount () - { - return 3; + public int getPartAmount() { + return 3; } + @Override - public String getIconSuffix (int partType) - { - switch (partType) - { - case 0: - return "_wrench_head"; - case 1: - return "_wrench_head_broken"; - case 2: - return "_wrench_handle"; - case 3: - return "_wrench_binding"; - default: - return ""; - } + public String getIconSuffix(int partType) { + switch (partType) { + case 0: + return "_wrench_head"; + case 1: + return "_wrench_head_broken"; + case 2: + return "_wrench_handle"; + case 3: + return "_wrench_binding"; + default: + return ""; + } } + @Override - public String getEffectSuffix () - { - return "_wrench_effect"; + public String getEffectSuffix() { + return "_wrench_effect"; } + @Override - public String getDefaultFolder () - { - return "wrench"; + public String getDefaultFolder() { + return "wrench"; } + @Override - public boolean canWrench(EntityPlayer player, int x, int y, int z) - { - return true; + public boolean canWrench(EntityPlayer player, int x, int y, int z) { + NBTTagCompound tags = player.inventory.getCurrentItem() + .getTagCompound().getCompoundTag("InfiTool"); + + if (!tags.getBoolean("Broken")) { + return true; + } + return false; } + @Override - public void wrenchUsed(EntityPlayer player, int x, int y, int z) - { + public void wrenchUsed(EntityPlayer player, int x, int y, int z) { + player.swingItem(); - AbilityHelper.damageTool(player.getCurrentEquippedItem(), 1, player, false); + AbilityHelper.damageTool(player.inventory.getCurrentItem(), 1, player, + false); + } }
\ No newline at end of file diff --git a/src/main/java/gmail/Lance5057/modifiers/TDefenseActiveToolMod.java b/src/main/java/gmail/Lance5057/modifiers/TDefenseActiveToolMod.java new file mode 100644 index 0000000..d03779b --- /dev/null +++ b/src/main/java/gmail/Lance5057/modifiers/TDefenseActiveToolMod.java @@ -0,0 +1,41 @@ +package gmail.Lance5057.modifiers; + +import java.util.Random; + +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.potion.PotionEffect; +import tconstruct.library.ActiveToolMod; +import tconstruct.library.tools.ToolCore; + +public class TDefenseActiveToolMod extends ActiveToolMod { + @Override + public int baseAttackDamage(int earlyModDamage, int damage, ToolCore tool, + NBTTagCompound tags, NBTTagCompound toolTags, ItemStack stack, + EntityLivingBase player, Entity entity) { + if (!toolTags.hasKey("Broken")) { + if (toolTags.hasKey("Daze")) { + int[] array = toolTags.getIntArray("Daze"); + int chance = array[0] * 5; + + Random roll = new Random(); + int num = roll.nextInt(100) + 1; + + if (num <= chance) { + ((EntityLivingBase) entity) + .addPotionEffect(new PotionEffect(2, 3 * 20, 100)); + ((EntityLivingBase) entity) + .addPotionEffect(new PotionEffect(9, 3 * 20, 100)); + ((EntityLivingBase) entity) + .addPotionEffect(new PotionEffect(15, 3 * 20, 100)); + ((EntityLivingBase) entity) + .addPotionEffect(new PotionEffect(18, 3 * 20, 100)); + } + } + } + + return 0; + } +} diff --git a/src/main/java/gmail/Lance5057/modifiers/modifierDaze.java b/src/main/java/gmail/Lance5057/modifiers/modifierDaze.java new file mode 100644 index 0000000..8b63791 --- /dev/null +++ b/src/main/java/gmail/Lance5057/modifiers/modifierDaze.java @@ -0,0 +1,87 @@ +package gmail.Lance5057.modifiers; + +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import tconstruct.modifiers.tools.ItemModTypeFilter; + +public class modifierDaze extends ItemModTypeFilter +{ + String tooltipName; + int max = 5; + String guiType; + + public modifierDaze(String type, int effect, ItemStack[] items, int[] values) + { + super(effect, "Daze", items, values); + tooltipName = "\u00A76Daze"; + guiType = type; + } + + @Override + protected boolean canModify (ItemStack tool, ItemStack[] input) + { + NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool"); + if (!tags.hasKey(key)) + return tags.getInteger("Modifiers") > 0 && matchingAmount(input) <= max; + + if (matchingAmount(input) > max) + return false; + + int keyPair[] = tags.getIntArray(key); + if (keyPair[0] + matchingAmount(input) <= keyPair[1]) + return true; + + else if (keyPair[0] == keyPair[1]) + return tags.getInteger("Modifiers") > 0; + + else + return false; + } + + @Override + public void modify (ItemStack[] input, ItemStack tool) + { + NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool"); + int increase = matchingAmount(input); + if (tags.hasKey(key)) + { + int[] keyPair = tags.getIntArray(key); + + if (keyPair[0] % max == 0) + { + keyPair[0] += increase; + keyPair[1] += max; + tags.setIntArray(key, keyPair); + + int modifiers = tags.getInteger("Modifiers"); + modifiers -= 1; + tags.setInteger("Modifiers", modifiers); + } + else + { + keyPair[0] += increase; + tags.setIntArray(key, keyPair); + } + updateModTag(tool, keyPair); + + } + else + { + int modifiers = tags.getInteger("Modifiers"); + modifiers -= 1; + tags.setInteger("Modifiers", modifiers); + String modName = "\u00A76" + guiType + " (" + increase + "/" + max + ")"; + int tooltipIndex = addToolTip(tool, tooltipName, modName); + int[] keyPair = new int[] { increase, max, tooltipIndex }; + tags.setIntArray(key, keyPair); + } + } + + void updateModTag (ItemStack tool, int[] keys) + { + NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool"); + String tip = "ModifierTip" + keys[2]; + String modName = "\u00A76" + guiType + " (" + keys[0] + "/" + keys[1] + ")"; + tags.setString(tip, modName); + } +}
\ No newline at end of file diff --git a/src/main/java/gmail/Lance5057/proxy/ClientProxy.java b/src/main/java/gmail/Lance5057/proxy/ClientProxy.java index 0c844dc..d827b92 100644 --- a/src/main/java/gmail/Lance5057/proxy/ClientProxy.java +++ b/src/main/java/gmail/Lance5057/proxy/ClientProxy.java @@ -2,7 +2,6 @@ package gmail.Lance5057.proxy; import gmail.Lance5057.TinkersDefense; import gmail.Lance5057.items.ModelTinkerArmor; -import gmail.Lance5057.items.tools.RoundShield; import gmail.Lance5057.models.Renderer_ArmorAnvil; import gmail.Lance5057.models.Renderer_CrestMount; import gmail.Lance5057.models.Renderer_JewelersBench; @@ -12,34 +11,42 @@ import gmail.Lance5057.tileentities.TileEntity_JewelersBench; import net.minecraft.client.model.ModelBiped; import net.minecraftforge.client.MinecraftForgeClient; import tconstruct.client.FlexibleToolRenderer; +import tconstruct.library.TConstructRegistry; +import tconstruct.library.client.TConstructClientRegistry; import tconstruct.library.tools.ToolCore; import cpw.mods.fml.client.registry.ClientRegistry; - -public class ClientProxy extends CommonProxy -{ +public class ClientProxy extends CommonProxy { private static final ModelTinkerArmor tutChest = new ModelTinkerArmor(1.0f); - @Override - public void registerRenderers() { - FlexibleToolRenderer renderer = new FlexibleToolRenderer(); - MinecraftForgeClient.registerItemRenderer(TinkersDefense.tool_roundShield, renderer); - MinecraftForgeClient.registerItemRenderer(TinkersDefense.tool_heaterShield, renderer); - MinecraftForgeClient.registerItemRenderer(TinkersDefense.tool_wrench, renderer); - - ClientRegistry.bindTileEntitySpecialRenderer(TileEntity_CrestMount.class, new Renderer_CrestMount()); - ClientRegistry.bindTileEntitySpecialRenderer(TileEntity_ArmorAnvil.class, new Renderer_ArmorAnvil()); - ClientRegistry.bindTileEntitySpecialRenderer(TileEntity_JewelersBench.class, new Renderer_JewelersBench()); - } - - @Override - public ModelBiped getArmorModel(int id) - { - switch (id) - { - case 0: return tutChest; - default: break; - } - return tutChest; //default, if whenever you should have passed on a wrong id - } + @Override + public void registerRenderers() { + FlexibleToolRenderer renderer = new FlexibleToolRenderer(); + MinecraftForgeClient.registerItemRenderer( + TinkersDefense.tool_roundShield, renderer); + MinecraftForgeClient.registerItemRenderer( + TinkersDefense.tool_heaterShield, renderer); + MinecraftForgeClient.registerItemRenderer(TinkersDefense.tool_wrench, + renderer); + + ClientRegistry.bindTileEntitySpecialRenderer( + TileEntity_CrestMount.class, new Renderer_CrestMount()); + ClientRegistry.bindTileEntitySpecialRenderer( + TileEntity_ArmorAnvil.class, new Renderer_ArmorAnvil()); + ClientRegistry.bindTileEntitySpecialRenderer( + TileEntity_JewelersBench.class, new Renderer_JewelersBench()); + + } + + @Override + public ModelBiped getArmorModel(int id) { + switch (id) { + case 0: + return tutChest; + default: + break; + } + return tutChest; // default, if whenever you should have passed on a + // wrong id + } }
\ No newline at end of file diff --git a/src/main/resources/assets/tinker/textures/items/broadsword/daze_sword_effect.png b/src/main/resources/assets/tinker/textures/items/broadsword/daze_sword_effect.png Binary files differnew file mode 100644 index 0000000..2368f14 --- /dev/null +++ b/src/main/resources/assets/tinker/textures/items/broadsword/daze_sword_effect.png diff --git a/src/main/resources/assets/tinkersdefense/broadsword/daze_sword_effect.png b/src/main/resources/assets/tinkersdefense/broadsword/daze_sword_effect.png Binary files differnew file mode 100644 index 0000000..2368f14 --- /dev/null +++ b/src/main/resources/assets/tinkersdefense/broadsword/daze_sword_effect.png diff --git a/src/main/resources/assets/tinkersdefense/daze_sword_effect.png b/src/main/resources/assets/tinkersdefense/daze_sword_effect.png Binary files differnew file mode 100644 index 0000000..2368f14 --- /dev/null +++ b/src/main/resources/assets/tinkersdefense/daze_sword_effect.png diff --git a/src/main/resources/assets/tinkersdefense/textures/broadsword/daze_sword_effect.png b/src/main/resources/assets/tinkersdefense/textures/broadsword/daze_sword_effect.png Binary files differnew file mode 100644 index 0000000..2368f14 --- /dev/null +++ b/src/main/resources/assets/tinkersdefense/textures/broadsword/daze_sword_effect.png diff --git a/src/main/resources/assets/tinkersdefense/textures/items/broadsword/daze_sword_effect.png b/src/main/resources/assets/tinkersdefense/textures/items/broadsword/daze_sword_effect.png Binary files differnew file mode 100644 index 0000000..2368f14 --- /dev/null +++ b/src/main/resources/assets/tinkersdefense/textures/items/broadsword/daze_sword_effect.png |
