summaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorLance5057 <Lance5057@gmail.com>2016-02-17 00:57:15 -0600
committerLance5057 <Lance5057@gmail.com>2016-02-17 00:57:15 -0600
commitd01b86cd71b4a805f273bd662a38aacafa803cf4 (patch)
treef6a7bd994cc76804eae9ee6f16e162325777d7a6 /src/main/java
parent10819ad8b1f865b47656de2ebec6c14ea552e262 (diff)
Buncha updates, forgot to github
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/lance5057/tDefense/Reference.java2
-rw-r--r--src/main/java/lance5057/tDefense/TD_Config.java12
-rw-r--r--src/main/java/lance5057/tDefense/TinkersDefense.java271
-rw-r--r--src/main/java/lance5057/tDefense/addons/TDAddonBotania.java77
-rw-r--r--src/main/java/lance5057/tDefense/armor/ArmorCore.java78
-rw-r--r--src/main/java/lance5057/tDefense/armor/events/ArmorModEvents.java17
-rw-r--r--src/main/java/lance5057/tDefense/armor/events/ArmorRenderEvent.java4
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/ChainArmor.java77
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/cloth/TinkersHood.java60
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/cloth/TinkersRobe.java129
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/cloth/TinkersShawl.java139
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/cloth/TinkersShoes.java133
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/heavy/TinkersBreastplate.java20
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/heavy/TinkersGrieves.java20
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/heavy/TinkersHelm.java14
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/heavy/TinkersSabatons.java23
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/light/TinkersBoots.java139
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/light/TinkersChausses.java134
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/light/TinkersCoif.java149
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/light/TinkersHalberd.java135
-rw-r--r--src/main/java/lance5057/tDefense/armor/modifiers/ArmorMods.java52
-rw-r--r--src/main/java/lance5057/tDefense/armor/modifiers/modifierProtection.java98
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersHood.java82
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersRobe.java127
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersShawl.java140
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersBreastplate.java2
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersHelm.java4
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersSabatons.java4
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersBoots.java91
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersChausses.java117
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersCoif.java78
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersHalberd.java130
-rw-r--r--src/main/java/lance5057/tDefense/core/TD_Patterns.java2
-rw-r--r--src/main/java/lance5057/tDefense/core/blocks/ore/TD_Ore.java39
-rw-r--r--src/main/java/lance5057/tDefense/core/events/TDEventHandler.java40
-rw-r--r--src/main/java/lance5057/tDefense/core/items/RawGem.java16
-rw-r--r--src/main/java/lance5057/tDefense/core/tools/HeaterShield.java20
-rw-r--r--src/main/java/lance5057/tDefense/core/tools/RoundShield.java20
-rw-r--r--src/main/java/lance5057/tDefense/core/tools/Shield.java25
-rw-r--r--src/main/java/lance5057/tDefense/core/tools/TinkerWrench.java5
-rw-r--r--src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/BotaniaToolMods.java30
-rw-r--r--src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/TDefenseActiveToolMod.java12
-rw-r--r--src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/TdefenseToolMods.java5
-rw-r--r--src/main/java/lance5057/tDefense/core/tools/modifiers/Botania/modifierCorpseIvy.java67
-rw-r--r--src/main/java/lance5057/tDefense/core/tools/modifiers/Modifiers.java6
-rw-r--r--src/main/java/lance5057/tDefense/finishingAnvil/blocks/finishingAnvil/Gui_FinishingAnvil.java12
-rw-r--r--src/main/java/lance5057/tDefense/finishingAnvil/utilities/Injector.java (renamed from src/main/java/lance5057/tDefense/core/Injector.java)85
-rw-r--r--src/main/java/lance5057/tDefense/finishingAnvil/utilities/InjectorLocations.java112
-rw-r--r--src/main/java/lance5057/tDefense/proxy/ClientProxy.java21
49 files changed, 2725 insertions, 350 deletions
diff --git a/src/main/java/lance5057/tDefense/Reference.java b/src/main/java/lance5057/tDefense/Reference.java
index a9d8bf5..2c78c27 100644
--- a/src/main/java/lance5057/tDefense/Reference.java
+++ b/src/main/java/lance5057/tDefense/Reference.java
@@ -4,7 +4,7 @@ public class Reference
{
public static final String MOD_ID = "tinkersdefense";
- public static final String VERSION = "1.2";
+ public static final String VERSION = "1.3a";
public static final String MOD_NAME = "Tinkers' Defense";
}
diff --git a/src/main/java/lance5057/tDefense/TD_Config.java b/src/main/java/lance5057/tDefense/TD_Config.java
index ef40f18..bca70b2 100644
--- a/src/main/java/lance5057/tDefense/TD_Config.java
+++ b/src/main/java/lance5057/tDefense/TD_Config.java
@@ -20,14 +20,21 @@ public class TD_Config
public int CrestLegendsID;
public int CrestBladesID;
+ public int ArmorProtectionID;
+
public int MaterialIndex;
+ public boolean BotaniaAddon;
+ public int CorpseIvyModID;
+
public TD_Config(FMLPreInitializationEvent e)
{
Configuration config = new Configuration(e.getSuggestedConfigurationFile());
config.load();
+ MaterialIndex = config.get("Material Index", "Highest material ID - TDefense - 206 MFR - 1001 ExtraTIC - 1024", 206).getInt();
+
AeonsteelMatID = config.get("Material Configs", "Aeonsteel Material ID", 201).getInt();
QueensGoldMatID = config.get("Material Configs", "QueensGold Material ID", 202).getInt();
DogbeariumMatID = config.get("Material Configs", "Dogbearium Material ID", 203).getInt();
@@ -40,9 +47,10 @@ public class TD_Config
CrestLegendsID = config.get("Modifier Configs", "Crest of Legends ID", 21).getInt();
CrestLegendsID = config.get("Modifier Configs", "Crest of Legends ID", 22).getInt();
- MaterialIndex = config.get("Material Index", "Highest material ID - TDefense - 204 MFR - 1001 ExtraTIC - 1024", 204).getInt();
-
+ ArmorProtectionID = config.getInt("Protection ID", "Armor Modifier Configs", 40, 0, Integer.MAX_VALUE, "");
+ BotaniaAddon = config.getBoolean("Enable Botania Addon", "Botania Addon", true, "Still requires Botania to use");
+ CorpseIvyModID = config.getInt("Corpse Drinker Ivy Modifier ID", "Botania Addon", 60, 0, Integer.MAX_VALUE, "");
config.save();
}
diff --git a/src/main/java/lance5057/tDefense/TinkersDefense.java b/src/main/java/lance5057/tDefense/TinkersDefense.java
index 8782cf3..9c66e96 100644
--- a/src/main/java/lance5057/tDefense/TinkersDefense.java
+++ b/src/main/java/lance5057/tDefense/TinkersDefense.java
@@ -4,22 +4,28 @@ import static net.minecraft.util.EnumChatFormatting.DARK_RED;
import static net.minecraft.util.EnumChatFormatting.GOLD;
import static net.minecraft.util.EnumChatFormatting.LIGHT_PURPLE;
-import java.time.LocalDate;
-import java.time.ZoneId;
+import java.util.ArrayList;
import java.util.Date;
+import java.util.List;
+import lance5057.tDefense.addons.TDAddonBotania;
+import lance5057.tDefense.armor.events.ArmorModEvents;
import lance5057.tDefense.armor.events.ArmorRenderEvent;
-import lance5057.tDefense.armor.items.ChainArmor;
-import lance5057.tDefense.armor.items.Mask;
-import lance5057.tDefense.armor.items.Sheath;
+import lance5057.tDefense.armor.items.cloth.TinkersHood;
+import lance5057.tDefense.armor.items.cloth.TinkersRobe;
+import lance5057.tDefense.armor.items.cloth.TinkersShawl;
+import lance5057.tDefense.armor.items.cloth.TinkersShoes;
import lance5057.tDefense.armor.items.heavy.TinkersBreastplate;
import lance5057.tDefense.armor.items.heavy.TinkersGrieves;
import lance5057.tDefense.armor.items.heavy.TinkersHelm;
import lance5057.tDefense.armor.items.heavy.TinkersSabatons;
+import lance5057.tDefense.armor.items.light.TinkersBoots;
+import lance5057.tDefense.armor.items.light.TinkersChausses;
+import lance5057.tDefense.armor.items.light.TinkersCoif;
+import lance5057.tDefense.armor.items.light.TinkersHalberd;
import lance5057.tDefense.armor.parts.Cloth;
import lance5057.tDefense.armor.parts.ClothMaterial;
import lance5057.tDefense.blocks.JewelersBench;
-import lance5057.tDefense.core.Injector;
import lance5057.tDefense.core.TD_Patterns;
import lance5057.tDefense.core.blocks.AeonSteelBlock;
import lance5057.tDefense.core.blocks.DogbeariumBlock;
@@ -28,25 +34,28 @@ import lance5057.tDefense.core.blocks.QueensGoldBlock;
import lance5057.tDefense.core.blocks.RedMintBlock;
import lance5057.tDefense.core.blocks.crestMount.CrestMount;
import lance5057.tDefense.core.blocks.crestMount.TileEntity_CrestMount;
+import lance5057.tDefense.core.blocks.ore.TD_Ore;
import lance5057.tDefense.core.events.TDEventHandler;
+import lance5057.tDefense.core.items.RawGem;
import lance5057.tDefense.core.liquids.MoltenFluid;
import lance5057.tDefense.core.network.PacketHandler;
import lance5057.tDefense.core.tools.HeaterShield;
import lance5057.tDefense.core.tools.RoundShield;
import lance5057.tDefense.core.tools.Shears;
import lance5057.tDefense.core.tools.TinkerWrench;
-import lance5057.tDefense.core.tools.TinkerZweihander;
import lance5057.tDefense.core.tools.modifiers.Modifiers;
import lance5057.tDefense.finishingAnvil.blocks.finishingAnvil.FinishingAnvil;
import lance5057.tDefense.finishingAnvil.blocks.finishingAnvil.TileEntity_FinishingAnvil;
+import lance5057.tDefense.finishingAnvil.utilities.Injector;
+import lance5057.tDefense.finishingAnvil.utilities.InjectorLocations;
import lance5057.tDefense.proxy.CommonProxy;
import lance5057.tDefense.tileentities.TileEntity_JewelersBench;
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.ItemArmor.ArmorMaterial;
import net.minecraft.item.ItemStack;
import net.minecraft.util.StatCollector;
import net.minecraftforge.common.MinecraftForge;
@@ -55,10 +64,12 @@ import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fluids.FluidStack;
import tconstruct.TConstruct;
import tconstruct.library.TConstructRegistry;
+import tconstruct.library.client.StencilGuiElement;
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;
@@ -98,6 +109,7 @@ public class TinkersDefense {
public static TDEventHandler TDevents;
public static ArmorRenderEvent AREvent;
+ public static ArmorModEvents AMEvent;
public static TD_Config config;
@@ -105,8 +117,6 @@ public class TinkersDefense {
.newSimpleChannel(Reference.MOD_ID);
static Date date = new Date();
- static LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
- public static int month = localDate.getMonthValue();
public static Item tabIcon;
@@ -139,13 +149,23 @@ public class TinkersDefense {
public static Block block_GreenMintBlock;
public static Fluid moltenGreenMint;
public static Block moltenGreenMintBlock;
+
+ public static Item item_RawSapphire;
+ public static Item item_RawRuby;
+ public static Item item_RawAmethyst;
+ public static Item item_RawAmber;
+
+ public static Block block_SapphireOre;
+ public static Block block_RubyOre;
+ public static Block block_AmethystOre;
+ public static Block block_AmberOre;
public static ToolCore tool_roundShield;
public static ToolCore tool_heaterShield;
public static ToolCore tool_wrench;
- public static ToolCore tool_sheath;
- public static ToolCore tool_mask;
- public static ToolCore tool_zweihander;
+// public static ToolCore tool_sheath;
+// public static ToolCore tool_mask;
+// public static ToolCore tool_zweihander;
public static ToolCore tool_shears;
public static Block block_CrestMount;
@@ -153,10 +173,15 @@ public class TinkersDefense {
public static Block block_JewelersBench;
public static ToolCore armor_TinkerHood;
- public static ToolCore armor_TinkerCowl;
+ public static ToolCore armor_TinkerShawl;
public static ToolCore armor_TinkerRobe;
public static ToolCore armor_TinkerShoes;
+ public static ToolCore armor_TinkerCoif;
+ public static ToolCore armor_TinkerHalberd;
+ public static ToolCore armor_TinkerChausses;
+ public static ToolCore armor_TinkerBoots;
+
public static ToolCore armor_TinkerHelm;
public static ToolCore armor_TinkerBreastplate;
public static ToolCore armor_TinkerGrieves;
@@ -172,23 +197,61 @@ public class TinkersDefense {
public static Item partCloth;
public static Item partChainmaille;
- public static Injector tcInject;
+ public static List<Injector> tcInject;
+ public static InjectorLocations injectLoc;
+
+ public static TDAddonBotania flowermod;
@SidedProxy(clientSide = "lance5057.tDefense.proxy.ClientProxy", serverSide = "lance5057.tDefense.proxy.CommonProxy")
public static CommonProxy proxy;
+ public static int month;
@EventHandler
public void preInit(FMLPreInitializationEvent e) {
+ month = this.date.getMonth();
+
PacketHandler.init();
TDevents = new TDEventHandler();
AREvent = new ArmorRenderEvent();
+ AMEvent = new ArmorModEvents();
MinecraftForge.EVENT_BUS.register(AREvent);
+ MinecraftForge.EVENT_BUS.register(AMEvent);
config = new TD_Config(e);
+
+ NetworkRegistry.INSTANCE.registerGuiHandler(TinkersDefense.instance,
+ new CommonProxy());
+ MinecraftForge.EVENT_BUS.register(this);
+
+ tabIcon = new Item().setMaxStackSize(1).setCreativeTab(tabName).setUnlocalizedName("tabIcon").setTextureName(Reference.MOD_ID + ":Icon");
+ GameRegistry.registerItem(tabIcon, "tabIcon");
+
+ //flowermod = new TDAddonBotania();
+
mods = new Modifiers();
- mods.init();
+ injectLoc = new InjectorLocations();
+
+// item_RawSapphire = new RawGem("sapphire");
+// item_RawRuby = new RawGem("ruby");
+// item_RawAmethyst = new RawGem("amethyst");
+// item_RawAmber = new RawGem("amber");
+//
+// block_SapphireOre = new TD_Ore(Material.ground, "sapphire", item_RawSapphire);
+// block_RubyOre = new TD_Ore(Material.ground, "ruby", item_RawRuby);
+// block_AmethystOre = new TD_Ore(Material.ground, "amethyst", item_RawAmethyst);
+// block_AmberOre = new TD_Ore(Material.ground, "amber", item_RawAmber);
+//
+// GameRegistry.registerItem(item_RawSapphire, "rawsapphire");
+// GameRegistry.registerItem(item_RawRuby, "rawruby");
+// GameRegistry.registerItem(item_RawAmethyst, "rawamethyst");
+// GameRegistry.registerItem(item_RawAmber, "rawamber");
+//
+// GameRegistry.registerBlock(block_SapphireOre, "sapphireore");
+// GameRegistry.registerBlock(block_RubyOre, "rubyore");
+// GameRegistry.registerBlock(block_AmethystOre, "amethystore");
+// GameRegistry.registerBlock(block_AmberOre, "amber ore");
block_CrestMount = new CrestMount().setHardness(4.0F)
.setStepSound(Block.soundTypeStone).setBlockName("CrestMount")
@@ -202,7 +265,7 @@ public class TinkersDefense {
new Object[] { "xxx", "-i-", "---", 'x',
new ItemStack(TinkerTools.toughRod, 1, 1), 'i',
new ItemStack(TinkerTools.toolRod, 1, 1) });
-
+
block_ArmorAnvil = new FinishingAnvil().setHardness(4.0F)
.setStepSound(Block.soundTypeAnvil).setBlockName("ArmorAnvil")
.setCreativeTab(tabName);
@@ -210,6 +273,11 @@ public class TinkersDefense {
GameRegistry.registerBlock(block_ArmorAnvil, "Block_ArmorAnvil");
GameRegistry.registerTileEntity(TileEntity_FinishingAnvil.class,
"Tile_ArmorAnvil");
+
+ GameRegistry.addShapedRecipe(new ItemStack(block_ArmorAnvil),
+ new Object[] { "ai-", "lr-", "---", 'r',
+ new ItemStack(TinkerTools.toughRod, 1, 0), 'a',
+ Blocks.anvil, 'i', Items.iron_ingot, 'l', Blocks.log });
block_JewelersBench = new JewelersBench().setHardness(4.0F)
.setStepSound(Block.soundTypeWood)
@@ -218,13 +286,6 @@ public class TinkersDefense {
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);
-
- tabIcon = new Item().setMaxStackSize(1).setCreativeTab(tabName).setUnlocalizedName("tabIcon").setTextureName(Reference.MOD_ID + ":Icon");
- GameRegistry.registerItem(tabIcon, "tabIcon");
item_AeonSteelIngot = new Item().setCreativeTab(tabName)
.setMaxStackSize(64).setUnlocalizedName("AeonsteelIngot")
@@ -319,11 +380,11 @@ public class TinkersDefense {
//Candy Canes
item_RedMintcane = new Item().setCreativeTab(tabName)
.setMaxStackSize(64).setUnlocalizedName("RedMintcane")
- .setTextureName(Reference.MOD_ID + ":RedMintcane");
+ .setTextureName(Reference.MOD_ID + ":redmintcane");
item_RedMintIngot = new Item().setCreativeTab(tabName)
.setMaxStackSize(64).setUnlocalizedName("RedMintIngot")
- .setTextureName(Reference.MOD_ID + ":RedMintIngot");
+ .setTextureName(Reference.MOD_ID + ":redmintingot");
GameRegistry.registerItem(item_RedMintcane, "RedMintCane");
GameRegistry.registerItem(item_RedMintIngot, "RedMintIngot");
@@ -331,9 +392,9 @@ public class TinkersDefense {
block_RedMintBlock = new RedMintBlock(Material.iron)
.setHardness(4.0F).setStepSound(Block.soundTypeMetal)
.setBlockName("RedMintBlock").setCreativeTab(tabName)
- .setBlockTextureName(Reference.MOD_ID + ":RedMintBlock");
+ .setBlockTextureName(Reference.MOD_ID + ":redmintblock");
- GameRegistry.registerBlock(block_RedMintBlock, "RedMintblock");
+ GameRegistry.registerBlock(block_RedMintBlock, "redmintblock");
GameRegistry
.addShapedRecipe(new ItemStack(block_RedMintBlock),
@@ -353,11 +414,11 @@ public class TinkersDefense {
item_GreenMintcane = new Item().setCreativeTab(tabName)
.setMaxStackSize(64).setUnlocalizedName("GreenMintcane")
- .setTextureName(Reference.MOD_ID + ":GreenMintcane");
+ .setTextureName(Reference.MOD_ID + ":greenmintcane");
item_GreenMintIngot = new Item().setCreativeTab(tabName)
.setMaxStackSize(64).setUnlocalizedName("GreenMintIngot")
- .setTextureName(Reference.MOD_ID + ":GreenMintIngot");
+ .setTextureName(Reference.MOD_ID + ":greenmintingot");
GameRegistry.registerItem(item_GreenMintcane, "GreenMintCane");
GameRegistry.registerItem(item_GreenMintIngot, "GreenMintIngot");
@@ -365,7 +426,7 @@ public class TinkersDefense {
block_GreenMintBlock = new GreenMintBlock(Material.iron)
.setHardness(4.0F).setStepSound(Block.soundTypeMetal)
.setBlockName("GreenMintBlock").setCreativeTab(tabName)
- .setBlockTextureName(Reference.MOD_ID + ":GreenMintBlock");
+ .setBlockTextureName(Reference.MOD_ID + ":greenmintblock");
GameRegistry.registerBlock(block_GreenMintBlock, "GreenMintblock");
@@ -388,16 +449,26 @@ public class TinkersDefense {
tool_shears = new Shears();
tool_wrench = new TinkerWrench();
- tool_sheath = new Sheath();
- tool_mask = new Mask();
+// tool_sheath = new Sheath();
+// tool_mask = new Mask();
- tool_zweihander = new TinkerZweihander(0);
+// tool_zweihander = new TinkerZweihander(0);
armor_TinkerHelm = new TinkersHelm();
armor_TinkerBreastplate = new TinkersBreastplate();
armor_TinkerGrieves = new TinkersGrieves();
armor_TinkerSabatons = new TinkersSabatons();
+ armor_TinkerRobe = new TinkersRobe();
+ armor_TinkerShawl = new TinkersShawl();
+ armor_TinkerHood = new TinkersHood();
+ armor_TinkerShoes = new TinkersShoes();
+
+ armor_TinkerCoif = new TinkersCoif();
+ armor_TinkerHalberd = new TinkersHalberd();
+ armor_TinkerChausses = new TinkersChausses();
+ armor_TinkerBoots = new TinkersBoots();
+
//Register Tools
GameRegistry.registerItem(tool_roundShield, "Round Shield");
@@ -405,27 +476,48 @@ public class TinkersDefense {
GameRegistry.registerItem(tool_shears, "Tinker Shears");
GameRegistry.registerItem(tool_wrench, "Tinker Wrench");
- GameRegistry.registerItem(tool_sheath, "Sheath");
- GameRegistry.registerItem(tool_mask, "Mask");
+// GameRegistry.registerItem(tool_sheath, "Sheath");
+// GameRegistry.registerItem(tool_mask, "Mask");
+// GameRegistry.registerItem(tool_zweihander, "Zweihander");
- GameRegistry.registerItem(tool_zweihander, "Zweihander");
GameRegistry.registerItem(armor_TinkerHelm,"tinkerhelm");
GameRegistry.registerItem(armor_TinkerBreastplate,"tinkerbreastplate");
GameRegistry.registerItem(armor_TinkerGrieves,"tinkergrieves");
GameRegistry.registerItem(armor_TinkerSabatons,"tinkersabatons");
+ GameRegistry.registerItem(armor_TinkerCoif,"tinkercoif");
+ GameRegistry.registerItem(armor_TinkerHalberd,"tinkerhalberd");
+ GameRegistry.registerItem(armor_TinkerChausses,"tinkerchausses");
+ GameRegistry.registerItem(armor_TinkerBoots,"tinkerboots");
+
+ GameRegistry.registerItem(armor_TinkerRobe, "tinkerrobe");
+ GameRegistry.registerItem(armor_TinkerShawl, "tinkershawl");
+ GameRegistry.registerItem(armor_TinkerHood, "tinkerhood");
+ GameRegistry.registerItem(armor_TinkerShoes, "tinkershoes");
+
//Add Tools to TiCo directory
TConstructRegistry.addItemToDirectory("Round Shield", tool_roundShield);
TConstructRegistry.addItemToDirectory("Heater Shield", tool_heaterShield);
TConstructRegistry.addItemToDirectory("Tinker Shears", tool_shears);
TConstructRegistry.addItemToDirectory("Tinker Wrench", tool_wrench);
- TConstructRegistry.addItemToDirectory("Sheath", tool_sheath);
- TConstructRegistry.addItemToDirectory("Mask", tool_mask);
- TConstructRegistry.addItemToDirectory("Zweihander", tool_zweihander);
+// TConstructRegistry.addItemToDirectory("Sheath", tool_sheath);
+// TConstructRegistry.addItemToDirectory("Mask", tool_mask);
+// TConstructRegistry.addItemToDirectory("Zweihander", tool_zweihander);
+
TConstructRegistry.addItemToDirectory("tinkerhelm", armor_TinkerHelm);
TConstructRegistry.addItemToDirectory("tinkerbreastplate", armor_TinkerBreastplate);
TConstructRegistry.addItemToDirectory("tinkergrieves", armor_TinkerGrieves);
TConstructRegistry.addItemToDirectory("tinkersabatons", armor_TinkerSabatons);
+
+ TConstructRegistry.addItemToDirectory("tinkercoif", armor_TinkerCoif);
+ TConstructRegistry.addItemToDirectory("tinkerhalberd", armor_TinkerHalberd);
+ TConstructRegistry.addItemToDirectory("tinkerchausses", armor_TinkerChausses);
+ TConstructRegistry.addItemToDirectory("tinkerboots", armor_TinkerBoots);
+
+ TConstructRegistry.addItemToDirectory("tinkerrobe", armor_TinkerRobe);
+ TConstructRegistry.addItemToDirectory("tinkershawl", armor_TinkerShawl);
+ TConstructRegistry.addItemToDirectory("tinkerhood", armor_TinkerHood);
+ TConstructRegistry.addItemToDirectory("tinkershoes", armor_TinkerShoes);
woodPattern = new TD_Patterns("pattern_", "Pattern");
metalPattern = new TD_Patterns("cast_", "MetalPattern");
@@ -445,8 +537,8 @@ public class TinkersDefense {
// Renderers
proxy.registerRenderers();
- item_ChainArmor = new ChainArmor(ArmorMaterial.IRON, 4, 1).setUnlocalizedName("Chain_Armor");
- GameRegistry.registerItem(item_ChainArmor,"Chain Armor");
+// item_ChainArmor = new ChainArmor(ArmorMaterial.IRON, 4, 1).setUnlocalizedName("Chain_Armor");
+// GameRegistry.registerItem(item_ChainArmor,"Chain Armor");
//tool_Sheath = new Sheath().setUnlocalizedName("Sheath");
@@ -461,10 +553,13 @@ public class TinkersDefense {
public void init(FMLInitializationEvent e) {
//System.out.print(Reference.MOD_ID);
+ //flowermod.RegisterRecipes();
+ //flowermod.RegisterModifiers();
+
StencilBuilder.registerStencil(50, woodPattern, 0); // rivets
StencilBuilder.registerStencil(51, woodPattern, 1); // clasp
StencilBuilder.registerStencil(52, woodPattern, 2); // armorplate
- //StencilBuilder.registerStencil(53, woodPattern, 3); // cloth
+ StencilBuilder.registerStencil(53, woodPattern, 3); // cloth
StencilBuilder.registerStencil(54, woodPattern, 4); // chainmaille
PatternBuilder.instance.addToolPattern(woodPattern);
@@ -490,10 +585,12 @@ public class TinkersDefense {
//buildParts(partCloth, 3);
buildParts(partChainmaille, 4);
+ mods.init();
+
PatternBuilder pb = PatternBuilder.instance;
TConstructClientRegistry.toolButtons
- .add(TConstructClientRegistry.toolButtons.size(),
+ .add(
new ToolGuiElement(
1,
0,
@@ -505,22 +602,16 @@ public class TinkersDefense {
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"));
+ ToolGuiElement button2 = 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");
+ TConstructClientRegistry.tierTwoButtons.add(button2);
+
+ TConstructClientRegistry.stencilButtons2.add(new StencilGuiElement(0, 0, 50, "tinkersdefense", "textures/gui/icons.png"));
+ TConstructClientRegistry.stencilButtons2.add(new StencilGuiElement(0, 0, 51, "tinkersdefense", "textures/gui/icons.png"));
+ TConstructClientRegistry.stencilButtons2.add(new StencilGuiElement(0, 0, 52, "tinkersdefense", "textures/gui/icons.png"));
+ TConstructClientRegistry.stencilButtons2.add(new StencilGuiElement(0, 0, 53, "tinkersdefense", "textures/gui/icons.png"));
+ TConstructClientRegistry.stencilButtons2.add(new StencilGuiElement(0, 0, 54, "tinkersdefense", "textures/gui/icons.png"));
-
// Aeonsteel
pb.registerMaterialSet("aeonsteel", new ItemStack(
TinkerTools.toolShard, 1, 10), new ItemStack(
@@ -656,8 +747,8 @@ public class TinkersDefense {
TConstructClientRegistry.addMaterialRenderMapping(config.RedMintMatID, "tinker",
"RedMint", true);
- TConstructRegistry.addToolMaterial(config.RedMintMatID, "RedMint", 4, 600, 800, 2,
- 1.6F, 0, -2f, DARK_RED.toString(), 0xFF0000);
+ TConstructRegistry.addToolMaterial(config.RedMintMatID, "RedMint", 1, 50, 10, 0,
+ 0F, 0, 0f, DARK_RED.toString(), 0xFF0000);
TinkerTools.registerPatternMaterial("RedMintIngot", 2, "RedMint");
TConstructRegistry.addDefaultToolPartMaterial(config.RedMintMatID);
@@ -689,8 +780,8 @@ public class TinkersDefense {
TConstructClientRegistry.addMaterialRenderMapping(config.GreenMintMatID, "tinker",
"GreenMint", true);
- TConstructRegistry.addToolMaterial(config.GreenMintMatID, "GreenMint", 4, 600, 800, 2,
- 1.6F, 0, -2f, DARK_RED.toString(), 0x5bde4b);
+ TConstructRegistry.addToolMaterial(config.GreenMintMatID, "GreenMint", 1, 50, 10, 0,
+ 0F, 0, 0f, DARK_RED.toString(), 0x5bde4b);
TinkerTools.registerPatternMaterial("GreenMintIngot", 2, "GreenMint");
TConstructRegistry.addDefaultToolPartMaterial(config.GreenMintMatID);
@@ -752,25 +843,44 @@ public class TinkersDefense {
TinkerTools.binding, TinkerTools.knifeBlade);
//Zweihander
- TConstructRegistry.addToolRecipe(tool_zweihander, TinkerTools.largeSwordBlade,
- TinkerTools.toughRod, TinkerTools.wideGuard, TinkerTools.swordBlade);
+// TConstructRegistry.addToolRecipe(tool_zweihander, TinkerTools.largeSwordBlade,
+// TinkerTools.toughRod, TinkerTools.wideGuard, TinkerTools.swordBlade);
//Armor
- TConstructRegistry.addToolRecipe(tool_sheath, partArmorplate,TinkerTools.toolRod, partCloth, partClasp);
- TConstructRegistry.addToolRecipe(tool_mask, partArmorplate, partCloth, partClasp);
+// TConstructRegistry.addToolRecipe(tool_sheath, partArmorplate,TinkerTools.toolRod, partCloth, partClasp);
+// TConstructRegistry.addToolRecipe(tool_mask, partArmorplate, partCloth, partClasp);
TConstructRegistry.addToolRecipe(armor_TinkerHelm, TinkerTools.frypanHead, TinkerTools.toughRod, partArmorplate);
TConstructRegistry.addToolRecipe(armor_TinkerBreastplate, TinkerTools.largePlate, TinkerTools.toughRod, partArmorplate, partChainmaille);
TConstructRegistry.addToolRecipe(armor_TinkerGrieves, partArmorplate, TinkerTools.toughRod, partChainmaille, partArmorplate);
TConstructRegistry.addToolRecipe(armor_TinkerSabatons, partArmorplate, TinkerTools.toughRod, partArmorplate, partCloth);
- tcInject = new Injector(0,TinkerTools.broadsword);
- GameRegistry.registerItem(tcInject, "debugger");
+ TConstructRegistry.addToolRecipe(armor_TinkerRobe, partCloth, partCloth);
+ TConstructRegistry.addToolRecipe(armor_TinkerShawl, partCloth, partCloth, partClasp);
+ TConstructRegistry.addToolRecipe(armor_TinkerHood, partCloth, partCloth, partRivet);
+ TConstructRegistry.addToolRecipe(armor_TinkerShoes, partCloth, partClasp, partRivet);
+
+ TConstructRegistry.addToolRecipe(armor_TinkerCoif, partChainmaille, partCloth, TinkerTools.toughRod);
+ TConstructRegistry.addToolRecipe(armor_TinkerHalberd, partChainmaille, partArmorplate, partRivet);
+ TConstructRegistry.addToolRecipe(armor_TinkerChausses, partChainmaille, partArmorplate);
+ TConstructRegistry.addToolRecipe(armor_TinkerBoots, partChainmaille, partCloth, partRivet);
+
+ tcInject = new ArrayList<Injector>();
+
+ for(int i = 0; i < TConstructRegistry.tools.size(); i++)
+ {
+ if(!(TConstructRegistry.tools.get(i) instanceof Injector))
+ {
+ tcInject.add(new Injector(i,TConstructRegistry.tools.get(i), injectLoc));
+ GameRegistry.registerItem(tcInject.get(i), "debugger_"+TConstructRegistry.tools.get(i).getLocalizedToolName());
+ }
+ }
}
@EventHandler
public void postInit(FMLPostInitializationEvent e) {
-
+ List list = ModifyBuilder.instance.itemModifiers;
+ list = ModifyBuilder.instance.itemModifiers;
}
public void castMolten(Fluid fluid, int ID) {
@@ -867,7 +977,22 @@ public class TinkersDefense {
new ItemStack(TinkerTools.arrowhead, 1, ID),
new FluidStack(fluid, (int) (144 * 1.0D)),
TConstructRegistry.getItemStack("arrowheadCast"), 50);
-
+ TConstructRegistry.instance.getTableCasting().addCastingRecipe(
+ new ItemStack(partArmorplate, 1, ID),
+ new FluidStack(fluid, (int) (144 * 4.0D)),
+ new ItemStack(metalPattern, 1, 2), 50);
+ TConstructRegistry.instance.getTableCasting().addCastingRecipe(
+ new ItemStack(partRivet, 1, ID),
+ new FluidStack(fluid, (int) (144 * 0.5D)),
+ new ItemStack(metalPattern, 1, 0), 50);
+ TConstructRegistry.instance.getTableCasting().addCastingRecipe(
+ new ItemStack(partClasp, 1, ID),
+ new FluidStack(fluid, (int) (144 * 1.0D)),
+ new ItemStack(metalPattern, 1, 1), 50);
+ TConstructRegistry.instance.getTableCasting().addCastingRecipe(
+ new ItemStack(partChainmaille, 1, ID),
+ new FluidStack(fluid, (int) (144 * 4.0D)),
+ new ItemStack(metalPattern, 1, 3), 50);
}
public void buildParts(Item item, int meta) {
@@ -910,9 +1035,9 @@ public class TinkersDefense {
{
int color[] = new int[3];
- color[0] = Integer.parseUnsignedInt(hex.substring(0, 2), 16);
- color[1] = Integer.parseUnsignedInt(hex.substring(2, 4), 16);
- color[2] = Integer.parseUnsignedInt(hex.substring(4, 6), 16);
+ color[0] = Integer.parseInt(hex.substring(0, 2), 16);
+ color[1] = Integer.parseInt(hex.substring(2, 4), 16);
+ color[2] = Integer.parseInt(hex.substring(4, 6), 16);
return color;
}
diff --git a/src/main/java/lance5057/tDefense/addons/TDAddonBotania.java b/src/main/java/lance5057/tDefense/addons/TDAddonBotania.java
new file mode 100644
index 0000000..fc28e7e
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/addons/TDAddonBotania.java
@@ -0,0 +1,77 @@
+package lance5057.tDefense.addons;
+
+import lance5057.tDefense.TinkersDefense;
+import lance5057.tDefense.core.tools.modifiers.Botania.modifierCorpseIvy;
+import lance5057.tDefense.core.tools.modifiers.weapons.modifierDaze;
+import net.minecraft.init.Blocks;
+import net.minecraft.init.Items;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.item.crafting.CraftingManager;
+import net.minecraftforge.oredict.ShapedOreRecipe;
+import tconstruct.library.crafting.ModifyBuilder;
+import tconstruct.tools.TinkerTools;
+import vazkii.botania.api.BotaniaAPI;
+import vazkii.botania.common.item.ModItems;
+import vazkii.botania.common.item.block.ItemBlockSpecialFlower;
+import vazkii.botania.common.lib.LibBlockNames;
+import vazkii.botania.common.lib.LibItemNames;
+import vazkii.botania.common.lib.LibOreDict;
+import cpw.mods.fml.common.Loader;
+import cpw.mods.fml.common.registry.GameRegistry;
+
+public class TDAddonBotania {
+ boolean active;
+
+ Item corpseIvyGraft;
+ Item corpseIvy;
+
+ public TDAddonBotania()
+ {
+ active = false;
+
+ if(Loader.isModLoaded("Botania"))
+ {
+ active = true;
+
+ LoadItems();
+ }
+ }
+
+ public void LoadItems()
+ {
+ corpseIvyGraft = new Item()
+ .setUnlocalizedName("corpseivygraft")
+ .setCreativeTab(TinkersDefense.tabName)
+ .setTextureName("tinkersdefense:corpseIvyGraft");
+
+ corpseIvy = new Item()
+ .setUnlocalizedName("corpseivy")
+ .setCreativeTab(TinkersDefense.tabName)
+ .setTextureName("tinkersdefense:corpseIvy");
+
+ GameRegistry.registerItem(corpseIvyGraft, "corpseivygraft");
+ GameRegistry.registerItem(corpseIvy, "corpseivy");
+ }
+
+ public void RegisterRecipes()
+ {
+ CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(corpseIvyGraft),
+ new Object[] {
+ "fsf",
+ "oio",
+ "fgf",
+ 'f', ItemBlockSpecialFlower.ofType(LibBlockNames.SUBTILE_BELLETHORN),
+ 'i', new ItemStack(ModItems.keepIvy, 1, 0),
+ 's', LibOreDict.MANA_STRING,
+ 'g', new ItemStack(TinkerTools.craftedSoil,1,3),
+ 'o', new ItemStack(ModItems.fertilizer,1,1)}));
+
+ BotaniaAPI.registerManaAlchemyRecipe(new ItemStack(corpseIvy,1,0), new ItemStack(corpseIvyGraft,1,0), 100000);
+ }
+
+ public void RegisterModifiers()
+ {
+ ModifyBuilder.registerModifier(new modifierCorpseIvy("Corpse Ivy", TinkersDefense.config.CorpseIvyModID, new ItemStack[] { new ItemStack(corpseIvy)}, new int[] {1}));
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/ArmorCore.java b/src/main/java/lance5057/tDefense/armor/ArmorCore.java
index 1410b8a..63abd7f 100644
--- a/src/main/java/lance5057/tDefense/armor/ArmorCore.java
+++ b/src/main/java/lance5057/tDefense/armor/ArmorCore.java
@@ -12,17 +12,20 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.ChatComponentText;
import net.minecraft.util.DamageSource;
import net.minecraft.util.IChatComponent;
+import net.minecraft.util.MathHelper;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.World;
import net.minecraftforge.common.ISpecialArmor;
import scala.Int;
import tconstruct.library.accessory.IAccessoryModel;
+import tconstruct.library.tools.AbilityHelper;
import tconstruct.library.tools.ToolCore;
public class ArmorCore extends ToolCore implements ISpecialArmor//, IAccessoryModel
-{
+{
int slot;
- public ModelBiped armorModel;
+ protected Double reductionPercent = 0.0;
+ protected int maxReduction = 0;
public ArmorCore(int baseProtection, int slot) {
super(baseProtection);
@@ -41,8 +44,18 @@ public class ArmorCore extends ToolCore implements ISpecialArmor//, IAccessoryMo
public ArmorProperties getProperties(EntityLivingBase player,
ItemStack armor, DamageSource source, double damage, int slot)
{
- ArmorProperties armorp = new ArmorProperties(0, 0.8, 100); //TODO figure this out
- ((EntityPlayer)player).addChatComponentMessage(new ChatComponentText(Double.toString(damage)));
+ NBTTagCompound tags = armor.getTagCompound().getCompoundTag("InfiTool");
+
+ Double enhancedPercent = reductionPercent;
+
+ if(tags.hasKey("Protection"))
+ enhancedPercent += (calcModifierDamage(tags.getInteger("Protection"), 0.75f, source) * 0.04);
+
+ ArmorProperties armorp = new ArmorProperties(0, enhancedPercent, maxReduction); //0.04 per half shirt
+ ((EntityPlayer)player).addChatComponentMessage(new ChatComponentText(source.getDamageType() +
+ " - Max: " + Double.toString(damage) +
+ " - ReductPerc: " + Double.toString(reductionPercent) +
+ " - EnhancedPerc: " + Double.toString(enhancedPercent)));
return armorp;
}
@@ -57,9 +70,10 @@ public class ArmorCore extends ToolCore implements ISpecialArmor//, IAccessoryMo
return slot;
}
+ @SideOnly(Side.CLIENT)
public ModelBiped getModel(String[] color, NBTTagCompound tags)
{
- return armorModel;
+ return null;
}
@Override
@@ -71,27 +85,7 @@ public class ArmorCore extends ToolCore implements ISpecialArmor//, IAccessoryMo
@Override
public void damageArmor(EntityLivingBase entity, ItemStack stack,
DamageSource source, int damage, int slot) {
- if (stack.hasTagCompound())
- {
- NBTTagCompound tags = stack.getTagCompound().getCompoundTag(getBaseTagName());
- if (!tags.getBoolean("Broken"))
- {
- int maxDurability = tags.getInteger("TotalDurability");
- int currentDurability = tags.getInteger("Damage");
- if (currentDurability + damage > maxDurability)
- {
- tags.setInteger("Damage", 0);
- tags.setBoolean("Broken", true);
- stack.setItemDamage(0);
- entity.worldObj.playSound(entity.posX, entity.posY, entity.posZ, "random.break", 1f, 1f, true);
- }
- else
- {
- tags.setInteger("Damage", currentDurability + damage);
- stack.setItemDamage(currentDurability + damage);
- }
- }
- }
+ AbilityHelper.damageTool(stack, damage, entity, false);
}
@Override
@@ -99,24 +93,7 @@ public class ArmorCore extends ToolCore implements ISpecialArmor//, IAccessoryMo
public ModelBiped getArmorModel(EntityLivingBase entityLiving,
ItemStack itemStack, int armorSlot)
{
- if (itemStack != null) {
-
- if (armorModel != null) {
- 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;
- }
- return armorModel;
- }
- }
- return armorModel;
- //this.armor
+ return null;
}
@Override
@@ -160,5 +137,18 @@ public class ArmorCore extends ToolCore implements ISpecialArmor//, IAccessoryMo
// // TODO Auto-generated method stub
// return null;
// }
+
+ public int calcModifierDamage(int level, float typeMod, DamageSource source)
+ {
+ if (source.canHarmInCreative())
+ {
+ return 0;
+ }
+ else
+ {
+ float f = (float)(6 + level * level) / 3.0F;
+ return MathHelper.floor_float(f * typeMod);
+ }
+ }
}
diff --git a/src/main/java/lance5057/tDefense/armor/events/ArmorModEvents.java b/src/main/java/lance5057/tDefense/armor/events/ArmorModEvents.java
new file mode 100644
index 0000000..d077565
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/events/ArmorModEvents.java
@@ -0,0 +1,17 @@
+package lance5057.tDefense.armor.events;
+
+import cpw.mods.fml.common.eventhandler.SubscribeEvent;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.util.ChatComponentText;
+import net.minecraftforge.client.event.RenderPlayerEvent;
+import net.minecraftforge.event.entity.living.LivingHurtEvent;
+
+public class ArmorModEvents
+{
+ @SubscribeEvent
+ public void AddProtections(LivingHurtEvent event)
+ {
+// if(event.entityLiving instanceof EntityPlayer)
+// ((EntityPlayer)event.entity).addChatComponentMessage(new ChatComponentText("Damage Recieved:" + Double.toString(event.ammount)));
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/events/ArmorRenderEvent.java b/src/main/java/lance5057/tDefense/armor/events/ArmorRenderEvent.java
index 21ed906..42810b1 100644
--- a/src/main/java/lance5057/tDefense/armor/events/ArmorRenderEvent.java
+++ b/src/main/java/lance5057/tDefense/armor/events/ArmorRenderEvent.java
@@ -1,17 +1,19 @@
package lance5057.tDefense.armor.events;
import lance5057.tDefense.armor.ArmorCore;
-import lance5057.tDefense.armor.renderers.heavy.ModelTinkersHelm;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraftforge.client.event.RenderPlayerEvent;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
public class ArmorRenderEvent
{
+ @SideOnly(Side.CLIENT)
@SubscribeEvent
public void renderArmorEvent(RenderPlayerEvent.SetArmorModel event) {
if (event.entityPlayer != null)
diff --git a/src/main/java/lance5057/tDefense/armor/items/ChainArmor.java b/src/main/java/lance5057/tDefense/armor/items/ChainArmor.java
deleted file mode 100644
index a2bbd67..0000000
--- a/src/main/java/lance5057/tDefense/armor/items/ChainArmor.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package lance5057.tDefense.armor.items;
-
-import lance5057.tDefense.proxy.ClientProxy;
-import net.minecraft.client.model.ModelBiped;
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemArmor;
-import net.minecraft.item.ItemStack;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-public class ChainArmor extends ItemArmor {
- public ChainArmor(ArmorMaterial par2EnumArmorMaterial, int par3, int par4) {
- super(par2EnumArmorMaterial, par3, par4);
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public void registerIcons(IIconRegister par1IconRegister) {
- String itemName = "tinkersdefense:textures/armor/ChainArmor";
- this.itemIcon = par1IconRegister.registerIcon(itemName);
- }
-
- @Override
- public String getArmorTexture(ItemStack stack, Entity entity, int slot,
- String type) {
- return "tinkersdefense:textures/armor/ChainArmor.png";
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public ModelBiped getArmorModel(EntityLivingBase entityLiving,
- ItemStack itemStack, int armorSlot)
- {
-
-// return ClientProxy.chain;
- ModelBiped armorModel = ClientProxy.chain;
- 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);
-// }
-//
-// }
- 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.bipedLeftArm.showModel = armorSlot == 1;
-// 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;
- }
- return armorModel;
- }
- }
- return armorModel;
- }
-
-} \ No newline at end of file
diff --git a/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersHood.java b/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersHood.java
index 33f42b2..daa71f6 100644
--- a/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersHood.java
+++ b/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersHood.java
@@ -1,58 +1,65 @@
package lance5057.tDefense.armor.items.cloth;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import lance5057.tDefense.TinkersDefense;
import lance5057.tDefense.armor.ArmorCore;
-import lance5057.tDefense.armor.renderers.heavy.ModelTinkersHelm;
+import lance5057.tDefense.armor.parts.ClothMaterial;
+import lance5057.tDefense.armor.renderers.cloth.ModelTinkersHood;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
-import tconstruct.tools.TinkerTools;
+import net.minecraft.util.DamageSource;
+import net.minecraftforge.common.ISpecialArmor.ArmorProperties;
+import tconstruct.library.TConstructRegistry;
+import tconstruct.library.tools.CustomMaterial;
public class TinkersHood extends ArmorCore
{
public TinkersHood() {
- super(2,0);
- this.setUnlocalizedName("tinkershelm");
+ super(0,0);
+ this.setUnlocalizedName("tinkershood");
}
@Override
public Item getHeadItem()
{
- return TinkerTools.frypanHead;
+ return TinkersDefense.partCloth;
}
@Override
public Item getHandleItem() {
- return TinkerTools.toughRod;
+ return TinkersDefense.partCloth;
}
@Override
public Item getAccessoryItem()
{
- return TinkersDefense.partArmorplate;
+ return TinkersDefense.partRivet;
}
@Override
public int durabilityTypeAccessory() {
- return 2;
+ return 1;
}
@Override
public float getRepairCost() {
- return 4.0f;
+ return 1.0f;
}
@Override
public float getDurabilityModifier() {
- return 2.5f;
+ return 1f;
}
@Override
public float getDamageModifier() {
- return 1.4f;
+ return 1f;
}
@Override
@@ -65,13 +72,13 @@ public class TinkersHood extends ArmorCore
{
switch (partType) {
case 0:
- return "_helm_top";
+ return "_hood_cloth";
case 1:
- return "_helm_top_broken";
+ return "_hood_cloth_broken";
case 2:
- return "_helm_visor";
+ return "_hood_trim";
case 3:
- return "_helm_chain";
+ return "_hood_rivet";
default:
return "";
}
@@ -80,13 +87,13 @@ public class TinkersHood extends ArmorCore
@Override
public String getEffectSuffix()
{
- return "_helm_effect";
+ return "_hood_effect";
}
@Override
public String getDefaultFolder()
{
- return "armor/helm";
+ return "armor/hood";
}
// @Override
@@ -99,26 +106,35 @@ public class TinkersHood extends ArmorCore
@Override
public String getArmorTexture(ItemStack stack, Entity entity, int slot,
String type) {
- return "tinkersdefense:textures/armor/TinkersHelm.png";
+ return "tinkersdefense:textures/armor/TinkersHood.png";
}
@Override
public String[] getTraits() {
- return new String[] {"armor","helmet","helm","heavyarmor"};
+ return new String[] {"armor","helmet","hood","cloth"};
}
@Override
+ @SideOnly(Side.CLIENT)
public ModelBiped getModel(String[] color,NBTTagCompound tags)
{
String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3)};
- armorModel = new ModelTinkersHelm(color, this.getDefaultFolder(), textures);
- return armorModel;
+ int HeadID = tags.getCompoundTag("InfiTool").getInteger("RenderHead");
+ int HandleID = tags.getCompoundTag("InfiTool").getInteger("RenderHandle");
+
+ CustomMaterial newColor = TConstructRegistry.getCustomMaterial(HeadID, ClothMaterial.class);
+ color[1] = Integer.toHexString(newColor.color);
+
+ newColor = TConstructRegistry.getCustomMaterial(HandleID, ClothMaterial.class);
+ color[0] = Integer.toHexString(newColor.color);
+
+ return new ModelTinkersHood(color, this.getDefaultFolder(), textures);
}
@Override
public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
{
- return 2;
+ return 0;
}
}
diff --git a/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersRobe.java b/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersRobe.java
new file mode 100644
index 0000000..0961b57
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersRobe.java
@@ -0,0 +1,129 @@
+package lance5057.tDefense.armor.items.cloth;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import tconstruct.library.TConstructRegistry;
+import tconstruct.library.tools.CustomMaterial;
+import lance5057.tDefense.TinkersDefense;
+import lance5057.tDefense.armor.ArmorCore;
+import lance5057.tDefense.armor.parts.ClothMaterial;
+import lance5057.tDefense.armor.renderers.cloth.ModelTinkersRobe;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+
+public class TinkersRobe extends ArmorCore
+{
+ public TinkersRobe() {
+ super(0,2);
+ this.setUnlocalizedName("tinkerrobe");
+ }
+
+ @Override
+ public Item getHeadItem()
+ {
+ return TinkersDefense.partCloth;
+ }
+
+ @Override
+ public Item getHandleItem() {
+ return TinkersDefense.partCloth;
+ }
+
+ @Override
+ public int durabilityTypeAccessory() {
+ return 1;
+ }
+
+ @Override
+ public float getRepairCost() {
+ return 1.0f;
+ }
+
+ @Override
+ public float getDurabilityModifier() {
+ return 1f;
+ }
+
+ @Override
+ public float getDamageModifier() {
+ return 1f;
+ }
+
+ @Override
+ public int getPartAmount() {
+ return 2;
+ }
+
+ @Override
+ public String getIconSuffix(int partType)
+ {
+ switch (partType) {
+ case 0:
+ return "_robe_cloth";
+ case 1:
+ return "_robe_cloth_broken";
+ case 2:
+ return "_robe_trim";
+ default:
+ return "";
+ }
+ }
+
+ @Override
+ public String getEffectSuffix()
+ {
+ return "_robe_effect";
+ }
+
+ @Override
+ public String getDefaultFolder()
+ {
+ return "armor/robe";
+ }
+
+// @Override
+// public void onUpdate(ItemStack stack, World world, Entity entity, int par4,
+// boolean par5) {
+// super.onUpdate(stack, world, entity, par4, par5);
+//
+// }
+
+ @Override
+ public String getArmorTexture(ItemStack stack, Entity entity, int slot,
+ String type) {
+ return "tinkersdefense:textures/armor/TinkersRobe.png";
+ }
+
+ @Override
+ public String[] getTraits() {
+ return new String[] {"armor","pants","robe","cloth"};
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public ModelBiped getModel(String[] color,NBTTagCompound tags)
+ {
+ String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0)};
+
+ int HeadID = tags.getCompoundTag("InfiTool").getInteger("RenderHead");
+ int HandleID = tags.getCompoundTag("InfiTool").getInteger("RenderHandle");
+
+ CustomMaterial newColor = TConstructRegistry.getCustomMaterial(HeadID, ClothMaterial.class);
+ color[1] = Integer.toHexString(newColor.color);
+
+ newColor = TConstructRegistry.getCustomMaterial(HandleID, ClothMaterial.class);
+ color[0] = Integer.toHexString(newColor.color);
+
+ return new ModelTinkersRobe(color, this.getDefaultFolder(), textures);
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
+ {
+ return 0;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersShawl.java b/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersShawl.java
new file mode 100644
index 0000000..97341a1
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersShawl.java
@@ -0,0 +1,139 @@
+package lance5057.tDefense.armor.items.cloth;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import lance5057.tDefense.TinkersDefense;
+import lance5057.tDefense.armor.ArmorCore;
+import lance5057.tDefense.armor.parts.ClothMaterial;
+import lance5057.tDefense.armor.renderers.cloth.ModelTinkersShawl;
+import lance5057.tDefense.armor.renderers.heavy.ModelTinkersHelm;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import tconstruct.library.TConstructRegistry;
+import tconstruct.library.tools.CustomMaterial;
+import tconstruct.tools.TinkerTools;
+
+public class TinkersShawl extends ArmorCore
+{
+ public TinkersShawl() {
+ super(0,1);
+ this.setUnlocalizedName("tinkersshawl");
+ }
+
+ @Override
+ public Item getHeadItem()
+ {
+ return TinkersDefense.partCloth;
+ }
+
+ @Override
+ public Item getHandleItem() {
+ return TinkersDefense.partCloth;
+ }
+
+ @Override
+ public Item getAccessoryItem()
+ {
+ return TinkersDefense.partClasp;
+ }
+
+ @Override
+ public int durabilityTypeAccessory() {
+ return 1;
+ }
+
+ @Override
+ public float getRepairCost() {
+ return 1f;
+ }
+
+ @Override
+ public float getDurabilityModifier() {
+ return 1f;
+ }
+
+ @Override
+ public float getDamageModifier() {
+ return 1f;
+ }
+
+ @Override
+ public int getPartAmount() {
+ return 3;
+ }
+
+ @Override
+ public String getIconSuffix(int partType)
+ {
+ switch (partType) {
+ case 0:
+ return "_shawl_cloth";
+ case 1:
+ return "_shawl_cloth_broken";
+ case 2:
+ return "_shawl_trim";
+ case 3:
+ return "_shawl_clasp";
+ default:
+ return "";
+ }
+ }
+
+ @Override
+ public String getEffectSuffix()
+ {
+ return "_shawl_effect";
+ }
+
+ @Override
+ public String getDefaultFolder()
+ {
+ return "armor/shawl";
+ }
+
+// @Override
+// public void onUpdate(ItemStack stack, World world, Entity entity, int par4,
+// boolean par5) {
+// super.onUpdate(stack, world, entity, par4, par5);
+//
+// }
+
+ @Override
+ public String getArmorTexture(ItemStack stack, Entity entity, int slot,
+ String type) {
+ return "tinkersdefense:textures/armor/TinkersShawl.png";
+ }
+
+ @Override
+ public String[] getTraits() {
+ return new String[] {"armor","chest","shawl","cloth"};
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public ModelBiped getModel(String[] color,NBTTagCompound tags)
+ {
+ String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3)};
+
+ int HeadID = tags.getCompoundTag("InfiTool").getInteger("RenderHead");
+ int HandleID = tags.getCompoundTag("InfiTool").getInteger("RenderHandle");
+
+ CustomMaterial newColor = TConstructRegistry.getCustomMaterial(HeadID, ClothMaterial.class);
+ color[1] = Integer.toHexString(newColor.color);
+
+ newColor = TConstructRegistry.getCustomMaterial(HandleID, ClothMaterial.class);
+ color[0] = Integer.toHexString(newColor.color);
+
+ return new ModelTinkersShawl(color, this.getDefaultFolder(), textures);
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
+ {
+ return 0;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersShoes.java b/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersShoes.java
new file mode 100644
index 0000000..d842647
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersShoes.java
@@ -0,0 +1,133 @@
+package lance5057.tDefense.armor.items.cloth;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import lance5057.tDefense.TinkersDefense;
+import lance5057.tDefense.armor.ArmorCore;
+import lance5057.tDefense.armor.parts.ClothMaterial;
+import lance5057.tDefense.armor.renderers.light.ModelTinkersBoots;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import tconstruct.library.TConstructRegistry;
+import tconstruct.library.tools.CustomMaterial;
+
+public class TinkersShoes extends ArmorCore
+{
+ public TinkersShoes() {
+ super(0,3);
+ this.setUnlocalizedName("tinkersshoes");
+ }
+
+ @Override
+ public Item getHeadItem()
+ {
+ return TinkersDefense.partCloth;
+ }
+
+ @Override
+ public Item getHandleItem() {
+ return TinkersDefense.partClasp;
+ }
+
+ @Override
+ public Item getAccessoryItem()
+ {
+ return TinkersDefense.partRivet;
+ }
+
+ @Override
+ public int durabilityTypeAccessory() {
+ return 1;
+ }
+
+ @Override
+ public float getRepairCost() {
+ return 1.0f;
+ }
+
+ @Override
+ public float getDurabilityModifier() {
+ return 1f;
+ }
+
+ @Override
+ public float getDamageModifier() {
+ return 1f;
+ }
+
+ @Override
+ public int getPartAmount() {
+ return 3;
+ }
+
+ @Override
+ public String getIconSuffix(int partType)
+ {
+ switch (partType) {
+ case 0:
+ return "_shoes_cloth";
+ case 1:
+ return "_shoes_cloth_broken";
+ case 2:
+ return "_shoes_clasp";
+ case 3:
+ return "_shoes_rivet";
+ default:
+ return "";
+ }
+ }
+
+ @Override
+ public String getEffectSuffix()
+ {
+ return "_shoes_effect";
+ }
+
+ @Override
+ public String getDefaultFolder()
+ {
+ return "armor/shoes";
+ }
+
+// @Override
+// public void onUpdate(ItemStack stack, World world, Entity entity, int par4,
+// boolean par5) {
+// super.onUpdate(stack, world, entity, par4, par5);
+//
+// }
+
+ @Override
+ public String getArmorTexture(ItemStack stack, Entity entity, int slot,
+ String type) {
+ return "tinkersdefense:textures/armor/TinkersShoes.png";
+ }
+
+ @Override
+ public String[] getTraits() {
+ return new String[] {"armor","helmet","shoes","cloth"};
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public ModelBiped getModel(String[] color,NBTTagCompound tags)
+ {
+ String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3)};
+
+ int HeadID = tags.getCompoundTag("InfiTool").getInteger("RenderHead");
+
+ CustomMaterial newColor = TConstructRegistry.getCustomMaterial(HeadID, ClothMaterial.class);
+ color[1] = Integer.toHexString(newColor.color);
+
+ return (ModelBiped) new ModelTinkersBoots(color, this.getDefaultFolder(), textures);
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
+ {
+ return 0;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersBreastplate.java b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersBreastplate.java
index 3a8be65..d3fce5d 100644
--- a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersBreastplate.java
+++ b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersBreastplate.java
@@ -1,23 +1,30 @@
package lance5057.tDefense.armor.items.heavy;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import lance5057.tDefense.TinkersDefense;
import lance5057.tDefense.armor.ArmorCore;
import lance5057.tDefense.armor.renderers.heavy.ModelTinkersBreastplate;
import lance5057.tDefense.armor.renderers.heavy.ModelTinkersHelm;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.DamageSource;
import net.minecraft.world.World;
+import net.minecraftforge.common.ISpecialArmor.ArmorProperties;
import tconstruct.tools.TinkerTools;
public class TinkersBreastplate extends ArmorCore
{
public TinkersBreastplate() {
- super(0,1);
+ super(2,1);
this.setUnlocalizedName("tinkershelm");
+ this.maxReduction = 100;
+ this.reductionPercent = 0.32;
}
@Override
@@ -118,12 +125,17 @@ public class TinkersBreastplate extends ArmorCore
}
@Override
+ @SideOnly(Side.CLIENT)
public ModelBiped getModel(String[] color,NBTTagCompound tags)
{
String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3), this.getIconSuffix(4)};
- armorModel = new ModelTinkersBreastplate(color, this.getDefaultFolder(), textures);
-
- return armorModel;
+ return new ModelTinkersBreastplate(color, this.getDefaultFolder(), textures);
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
+ {
+ return 8;
}
}
diff --git a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersGrieves.java b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersGrieves.java
index 4903bde..747b0e7 100644
--- a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersGrieves.java
+++ b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersGrieves.java
@@ -1,21 +1,29 @@
package lance5057.tDefense.armor.items.heavy;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import lance5057.tDefense.TinkersDefense;
import lance5057.tDefense.armor.ArmorCore;
import lance5057.tDefense.armor.renderers.heavy.ModelTinkersGrieves;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.DamageSource;
import net.minecraft.world.World;
+import net.minecraftforge.common.ISpecialArmor.ArmorProperties;
import tconstruct.tools.TinkerTools;
public class TinkersGrieves extends ArmorCore
{
public TinkersGrieves() {
- super(0,2);
+ super(2,2);
this.setUnlocalizedName("tinkergrieves");
+ this.maxReduction = 100;
+ this.reductionPercent = 0.24;
}
@Override
@@ -116,11 +124,17 @@ public class TinkersGrieves extends ArmorCore
}
@Override
+ @SideOnly(Side.CLIENT)
public ModelBiped getModel(String[] color,NBTTagCompound tags)
{
String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3), this.getIconSuffix(4)};
- armorModel = new ModelTinkersGrieves(color, this.getDefaultFolder(), textures);
- return armorModel;
+ return new ModelTinkersGrieves(color, this.getDefaultFolder(), textures);
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
+ {
+ return 6;
}
}
diff --git a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersHelm.java b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersHelm.java
index a4444d4..a2ad9eb 100644
--- a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersHelm.java
+++ b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersHelm.java
@@ -5,18 +5,24 @@ import lance5057.tDefense.armor.ArmorCore;
import lance5057.tDefense.armor.renderers.heavy.ModelTinkersHelm;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.world.World;
+import net.minecraft.util.DamageSource;
+import net.minecraftforge.common.ISpecialArmor.ArmorProperties;
import tconstruct.tools.TinkerTools;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
public class TinkersHelm extends ArmorCore
{
public TinkersHelm() {
super(2,0);
this.setUnlocalizedName("tinkershelm");
+ this.maxReduction = 100;
+ this.reductionPercent = 0.12;
}
@Override
@@ -109,17 +115,17 @@ public class TinkersHelm extends ArmorCore
}
@Override
+ @SideOnly(Side.CLIENT)
public ModelBiped getModel(String[] color,NBTTagCompound tags)
{
String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3)};
- armorModel = new ModelTinkersHelm(color, this.getDefaultFolder(), textures);
- return armorModel;
+ return new ModelTinkersHelm(color, this.getDefaultFolder(), textures);
}
@Override
public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
{
- return 2;
+ return 3;
}
}
diff --git a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersSabatons.java b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersSabatons.java
index 2ada754..b3cb58a 100644
--- a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersSabatons.java
+++ b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersSabatons.java
@@ -1,14 +1,21 @@
package lance5057.tDefense.armor.items.heavy;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import lance5057.tDefense.TinkersDefense;
import lance5057.tDefense.armor.ArmorCore;
import lance5057.tDefense.armor.parts.ClothMaterial;
import lance5057.tDefense.armor.renderers.heavy.ModelTinkersSabatons;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.ChatComponentText;
+import net.minecraft.util.DamageSource;
+import net.minecraftforge.common.ISpecialArmor.ArmorProperties;
import tconstruct.library.TConstructRegistry;
import tconstruct.library.tools.CustomMaterial;
import tconstruct.tools.TinkerTools;
@@ -16,8 +23,10 @@ import tconstruct.tools.TinkerTools;
public class TinkersSabatons extends ArmorCore
{
public TinkersSabatons() {
- super(0,3);
+ super(2,3);
this.setUnlocalizedName("tinkersabatons");
+ this.maxReduction = 100;
+ this.reductionPercent = 0.12;
}
@Override
@@ -118,16 +127,24 @@ public class TinkersSabatons extends ArmorCore
}
@Override
+ @SideOnly(Side.CLIENT)
public ModelBiped getModel(String[] color, NBTTagCompound tags)
{
String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3), this.getIconSuffix(4)};
int matID = tags.getCompoundTag("InfiTool").getInteger("RenderExtra");
+
+
CustomMaterial newColor = TConstructRegistry.getCustomMaterial(matID, ClothMaterial.class);
color[3] = Integer.toHexString(newColor.color);
- armorModel = new ModelTinkersSabatons(color, this.getDefaultFolder(), textures);
- return armorModel;
+ return new ModelTinkersSabatons(color, this.getDefaultFolder(), textures);
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
+ {
+ return 3;
}
}
diff --git a/src/main/java/lance5057/tDefense/armor/items/light/TinkersBoots.java b/src/main/java/lance5057/tDefense/armor/items/light/TinkersBoots.java
new file mode 100644
index 0000000..afe0368
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/light/TinkersBoots.java
@@ -0,0 +1,139 @@
+package lance5057.tDefense.armor.items.light;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import lance5057.tDefense.TinkersDefense;
+import lance5057.tDefense.armor.ArmorCore;
+import lance5057.tDefense.armor.parts.ClothMaterial;
+import lance5057.tDefense.armor.renderers.cloth.ModelTinkersHood;
+import lance5057.tDefense.armor.renderers.light.ModelTinkersBoots;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.DamageSource;
+import net.minecraftforge.common.ISpecialArmor.ArmorProperties;
+import tconstruct.library.TConstructRegistry;
+import tconstruct.library.tools.CustomMaterial;
+
+public class TinkersBoots extends ArmorCore
+{
+ public TinkersBoots() {
+ super(1,3);
+ this.setUnlocalizedName("tinkersboots");
+ this.maxReduction = 100;
+ this.reductionPercent = 0.08;
+ }
+
+ @Override
+ public Item getHeadItem()
+ {
+ return TinkersDefense.partChainmaille;
+ }
+
+ @Override
+ public Item getHandleItem() {
+ return TinkersDefense.partCloth;
+ }
+
+ @Override
+ public Item getAccessoryItem()
+ {
+ return TinkersDefense.partRivet;
+ }
+
+ @Override
+ public int durabilityTypeAccessory() {
+ return 1;
+ }
+
+ @Override
+ public float getRepairCost() {
+ return 1.0f;
+ }
+
+ @Override
+ public float getDurabilityModifier() {
+ return 1f;
+ }
+
+ @Override
+ public float getDamageModifier() {
+ return 1f;
+ }
+
+ @Override
+ public int getPartAmount() {
+ return 3;
+ }
+
+ @Override
+ public String getIconSuffix(int partType)
+ {
+ switch (partType) {
+ case 0:
+ return "_boots_chain";
+ case 1:
+ return "_boots_chain_broken";
+ case 2:
+ return "_boots_cloth";
+ case 3:
+ return "_boots_rivet";
+ default:
+ return "";
+ }
+ }
+
+ @Override
+ public String getEffectSuffix()
+ {
+ return "_boots_effect";
+ }
+
+ @Override
+ public String getDefaultFolder()
+ {
+ return "armor/boots";
+ }
+
+// @Override
+// public void onUpdate(ItemStack stack, World world, Entity entity, int par4,
+// boolean par5) {
+// super.onUpdate(stack, world, entity, par4, par5);
+//
+// }
+
+ @Override
+ public String getArmorTexture(ItemStack stack, Entity entity, int slot,
+ String type) {
+ return "tinkersdefense:textures/armor/TinkersBoots.png";
+ }
+
+ @Override
+ public String[] getTraits() {
+ return new String[] {"armor","feet","boots","lightarmor"};
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public ModelBiped getModel(String[] color,NBTTagCompound tags)
+ {
+ String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3)};
+
+ int HandleID = tags.getCompoundTag("InfiTool").getInteger("RenderHandle");
+
+ CustomMaterial newColor = TConstructRegistry.getCustomMaterial(HandleID, ClothMaterial.class);
+ color[0] = Integer.toHexString(newColor.color);
+
+ return new ModelTinkersBoots(color, this.getDefaultFolder(), textures);
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
+ {
+ return 2;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/items/light/TinkersChausses.java b/src/main/java/lance5057/tDefense/armor/items/light/TinkersChausses.java
new file mode 100644
index 0000000..203535d
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/light/TinkersChausses.java
@@ -0,0 +1,134 @@
+package lance5057.tDefense.armor.items.light;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import lance5057.tDefense.TinkersDefense;
+import lance5057.tDefense.armor.ArmorCore;
+import lance5057.tDefense.armor.parts.ClothMaterial;
+import lance5057.tDefense.armor.renderers.light.ModelTinkersChausses;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.DamageSource;
+import net.minecraftforge.common.ISpecialArmor.ArmorProperties;
+import tconstruct.library.TConstructRegistry;
+import tconstruct.library.tools.CustomMaterial;
+
+public class TinkersChausses extends ArmorCore
+{
+ public TinkersChausses() {
+ super(1,2);
+ this.setUnlocalizedName("tinkerschausses");
+ this.maxReduction = 100;
+ this.reductionPercent = 0.2;
+ }
+
+ @Override
+ public Item getHeadItem()
+ {
+ return TinkersDefense.partChainmaille;
+ }
+
+ @Override
+ public Item getHandleItem() {
+ return TinkersDefense.partArmorplate;
+ }
+
+ @Override
+ public int durabilityTypeAccessory() {
+ return 1;
+ }
+
+ @Override
+ public float getRepairCost() {
+ return 1.0f;
+ }
+
+ @Override
+ public float getDurabilityModifier() {
+ return 1f;
+ }
+
+ @Override
+ public float getDamageModifier() {
+ return 1f;
+ }
+
+ @Override
+ public int getPartAmount() {
+ return 2;
+ }
+
+ @Override
+ public String getIconSuffix(int partType)
+ {
+ switch (partType) {
+ case 0:
+ return "_chausses_chain";
+ case 1:
+ return "_chausses_chain_broken";
+ case 2:
+ return "_chausses_plate";
+ default:
+ return "";
+ }
+ }
+
+ @Override
+ public String getEffectSuffix()
+ {
+ return "_chausses_effect";
+ }
+
+ @Override
+ public String getDefaultFolder()
+ {
+ return "armor/chausses";
+ }
+
+// @Override
+// public void onUpdate(ItemStack stack, World world, Entity entity, int par4,
+// boolean par5) {
+// super.onUpdate(stack, world, entity, par4, par5);
+//
+// }
+
+ @Override
+ public String getArmorTexture(ItemStack stack, Entity entity, int slot,
+ String type) {
+ return "tinkersdefense:textures/armor/TinkersChausses.png";
+ }
+
+ @Override
+ public String[] getTraits() {
+ return new String[] {"armor","feet","chausses","lightarmor"};
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public ModelBiped getModel(String[] color,NBTTagCompound tags)
+ {
+ String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0)};
+
+ return new ModelTinkersChausses(color, this.getDefaultFolder(), textures);
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
+ {
+ return 5;
+ }
+
+ @Override
+ public ArmorProperties getProperties(EntityLivingBase player,
+ ItemStack armor, DamageSource source, double damage, int slot)
+ {
+ ArmorProperties armorp = new ArmorProperties(0, 0.2, 100); //0.04 per half shirt
+ //((EntityPlayer)player).addChatComponentMessage(new ChatComponentText(Double.toString(damage)));
+ return armorp;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/items/light/TinkersCoif.java b/src/main/java/lance5057/tDefense/armor/items/light/TinkersCoif.java
new file mode 100644
index 0000000..47dbf27
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/light/TinkersCoif.java
@@ -0,0 +1,149 @@
+package lance5057.tDefense.armor.items.light;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import lance5057.tDefense.TinkersDefense;
+import lance5057.tDefense.armor.ArmorCore;
+import lance5057.tDefense.armor.parts.ClothMaterial;
+import lance5057.tDefense.armor.renderers.cloth.ModelTinkersHood;
+import lance5057.tDefense.armor.renderers.light.ModelTinkersCoif;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.DamageSource;
+import net.minecraftforge.common.ISpecialArmor.ArmorProperties;
+import tconstruct.library.TConstructRegistry;
+import tconstruct.library.tools.CustomMaterial;
+import tconstruct.tools.TinkerTools;
+
+public class TinkersCoif extends ArmorCore
+{
+ public TinkersCoif() {
+ super(1,0);
+ this.setUnlocalizedName("tinkerscoif");
+ this.maxReduction = 100;
+ this.reductionPercent = 0.08;
+ }
+
+ @Override
+ public Item getHeadItem()
+ {
+ return TinkersDefense.partChainmaille;
+ }
+
+ @Override
+ public Item getHandleItem() {
+ return TinkersDefense.partCloth;
+ }
+
+ @Override
+ public Item getAccessoryItem()
+ {
+ return TinkerTools.toughRod;
+ }
+
+ @Override
+ public int durabilityTypeAccessory() {
+ return 1;
+ }
+
+ @Override
+ public float getRepairCost() {
+ return 1.0f;
+ }
+
+ @Override
+ public float getDurabilityModifier() {
+ return 1f;
+ }
+
+ @Override
+ public float getDamageModifier() {
+ return 1f;
+ }
+
+ @Override
+ public int getPartAmount() {
+ return 3;
+ }
+
+ @Override
+ public String getIconSuffix(int partType)
+ {
+ switch (partType) {
+ case 0:
+ return "_coif_chain";
+ case 1:
+ return "_coif_chain_broken";
+ case 2:
+ return "_coif_cloth";
+ case 3:
+ return "_coif_circlet";
+ default:
+ return "";
+ }
+ }
+
+ @Override
+ public String getEffectSuffix()
+ {
+ return "_coif_effect";
+ }
+
+ @Override
+ public String getDefaultFolder()
+ {
+ return "armor/coif";
+ }
+
+// @Override
+// public void onUpdate(ItemStack stack, World world, Entity entity, int par4,
+// boolean par5) {
+// super.onUpdate(stack, world, entity, par4, par5);
+//
+// }
+
+ @Override
+ public String getArmorTexture(ItemStack stack, Entity entity, int slot,
+ String type) {
+ return "tinkersdefense:textures/armor/TinkersCoif.png";
+ }
+
+ @Override
+ public String[] getTraits() {
+ return new String[] {"armor","head","coif","lightarmor"};
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public ModelBiped getModel(String[] color,NBTTagCompound tags)
+ {
+ String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3)};
+
+ int HandleID = tags.getCompoundTag("InfiTool").getInteger("RenderHandle");
+
+ CustomMaterial newColor = TConstructRegistry.getCustomMaterial(HandleID, ClothMaterial.class);
+ color[0] = Integer.toHexString(newColor.color);
+
+ return new ModelTinkersCoif(color, this.getDefaultFolder(), textures);
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
+ {
+ return 2;
+ }
+
+ @Override
+ public ArmorProperties getProperties(EntityLivingBase player,
+ ItemStack armor, DamageSource source, double damage, int slot)
+ {
+ ArmorProperties armorp = new ArmorProperties(0, 0.08, 100); //0.04 per half shirt
+ //((EntityPlayer)player).addChatComponentMessage(new ChatComponentText(Double.toString(damage)));
+ return armorp;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/items/light/TinkersHalberd.java b/src/main/java/lance5057/tDefense/armor/items/light/TinkersHalberd.java
new file mode 100644
index 0000000..739e6e0
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/light/TinkersHalberd.java
@@ -0,0 +1,135 @@
+package lance5057.tDefense.armor.items.light;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import lance5057.tDefense.TinkersDefense;
+import lance5057.tDefense.armor.ArmorCore;
+import lance5057.tDefense.armor.parts.ClothMaterial;
+import lance5057.tDefense.armor.renderers.cloth.ModelTinkersHood;
+import lance5057.tDefense.armor.renderers.light.ModelTinkersHalberd;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.DamageSource;
+import net.minecraftforge.common.ISpecialArmor.ArmorProperties;
+import tconstruct.library.TConstructRegistry;
+import tconstruct.library.tools.CustomMaterial;
+import tconstruct.tools.TinkerTools;
+
+public class TinkersHalberd extends ArmorCore
+{
+ public TinkersHalberd() {
+ super(1,1);
+ this.setUnlocalizedName("tinkershalberd");
+ this.maxReduction = 100;
+ this.reductionPercent = 0.24;
+ }
+
+ @Override
+ public Item getHeadItem()
+ {
+ return TinkersDefense.partChainmaille;
+ }
+
+ @Override
+ public Item getHandleItem() {
+ return TinkersDefense.partArmorplate;
+ }
+
+ @Override
+ public Item getAccessoryItem()
+ {
+ return TinkersDefense.partRivet;
+ }
+
+ @Override
+ public int durabilityTypeAccessory() {
+ return 1;
+ }
+
+ @Override
+ public float getRepairCost() {
+ return 1.0f;
+ }
+
+ @Override
+ public float getDurabilityModifier() {
+ return 1f;
+ }
+
+ @Override
+ public float getDamageModifier() {
+ return 1f;
+ }
+
+ @Override
+ public int getPartAmount() {
+ return 3;
+ }
+
+ @Override
+ public String getIconSuffix(int partType)
+ {
+ switch (partType) {
+ case 0:
+ return "_halberd_chain";
+ case 1:
+ return "_halberd_chain_broken";
+ case 2:
+ return "_halberd_plate";
+ case 3:
+ return "_halberd_rivet";
+ default:
+ return "";
+ }
+ }
+
+ @Override
+ public String getEffectSuffix()
+ {
+ return "_halberd_effect";
+ }
+
+ @Override
+ public String getDefaultFolder()
+ {
+ return "armor/halberd";
+ }
+
+// @Override
+// public void onUpdate(ItemStack stack, World world, Entity entity, int par4,
+// boolean par5) {
+// super.onUpdate(stack, world, entity, par4, par5);
+//
+// }
+
+ @Override
+ public String getArmorTexture(ItemStack stack, Entity entity, int slot,
+ String type) {
+ return "tinkersdefense:textures/armor/TinkersHalberd.png";
+ }
+
+ @Override
+ public String[] getTraits() {
+ return new String[] {"armor","chest","halberd","lightarmor"};
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public ModelBiped getModel(String[] color,NBTTagCompound tags)
+ {
+ String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3)};
+
+ return new ModelTinkersHalberd(color, this.getDefaultFolder(), textures);
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot)
+ {
+ return 6;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/modifiers/ArmorMods.java b/src/main/java/lance5057/tDefense/armor/modifiers/ArmorMods.java
new file mode 100644
index 0000000..1ee7b1f
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/modifiers/ArmorMods.java
@@ -0,0 +1,52 @@
+package lance5057.tDefense.armor.modifiers;
+
+import java.util.List;
+
+import cpw.mods.fml.common.registry.GameRegistry;
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.init.Blocks;
+import net.minecraft.init.Items;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import tconstruct.armor.TinkerArmor;
+import tconstruct.library.TConstructRegistry;
+import tconstruct.library.client.TConstructClientRegistry;
+import tconstruct.library.crafting.ModifyBuilder;
+import tconstruct.library.tools.ToolCore;
+
+public class ArmorMods
+{
+ Item protKit;
+
+ public ArmorMods()
+ {
+ LoadItems();
+ RegisterRecipes();
+ RegisterModifiers();
+ }
+
+ public void LoadItems()
+ {
+ protKit = new Item()
+ .setUnlocalizedName("protectionkit")
+ .setCreativeTab(TinkersDefense.tabName)
+ .setTextureName("tinkersdefense:protectionkit");
+
+ GameRegistry.registerItem(protKit, "protectionkit");
+ }
+
+ public void RegisterRecipes()
+ {
+ GameRegistry.addShapelessRecipe(new ItemStack(protKit,1), new ItemStack(TinkersDefense.partArmorplate,1,2), TinkerArmor.heartCanister, Items.iron_ingot);
+ }
+
+ public void RegisterModifiers()
+ {
+ ModifyBuilder.registerModifier(new modifierProtection(new ItemStack[] {new ItemStack(protKit,1)}, TinkersDefense.config.ArmorProtectionID, 1, "\u00A77"));
+
+ for (ToolCore tool : TConstructRegistry.getToolMapping())
+ {
+ TConstructClientRegistry.addEffectRenderMapping(tool, TinkersDefense.config.ArmorProtectionID, "tinker", "protection", true);
+ }
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/modifiers/modifierProtection.java b/src/main/java/lance5057/tDefense/armor/modifiers/modifierProtection.java
new file mode 100644
index 0000000..bd781cd
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/modifiers/modifierProtection.java
@@ -0,0 +1,98 @@
+package lance5057.tDefense.armor.modifiers;
+
+import java.util.Arrays;
+import java.util.List;
+
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import tconstruct.library.crafting.PatternBuilder;
+import tconstruct.library.modifier.ItemModifier;
+import tconstruct.library.tools.AbilityHelper;
+import tconstruct.library.tools.ToolCore;
+import tconstruct.modifiers.tools.ModInteger;
+
+
+public class modifierProtection extends ModInteger
+{
+ String color;
+ String tooltipName = "";
+ int initialIncrease;
+ int secondaryIncrease;
+
+ public modifierProtection(ItemStack[] items, int effect, int increase, String c)
+ {
+ super(items, effect, "Protection", increase, c, "Protection");
+ color = c;
+ }
+
+ @Override
+ protected boolean canModify (ItemStack tool, ItemStack[] input)
+ {
+ if (tool.getItem() instanceof ToolCore)
+ {
+ List list = Arrays.asList(((ToolCore)tool.getItem()).getTraits());
+ if (list.contains("heavyarmor") || list.contains("lightarmor"))
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ @Override
+ public void modify (ItemStack[] input, ItemStack tool)
+ {
+ NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool");
+ if (tags.hasKey(key))
+ {
+ int increase = tags.getInteger(key);
+ increase += secondaryIncrease;
+ tags.setInteger(key, increase);
+ }
+ else
+ {
+ tags.setInteger(key, initialIncrease);
+ }
+
+ int modifiers = tags.getInteger("Modifiers");
+ modifiers -= 1;
+ tags.setInteger("Modifiers", modifiers);
+
+ int prot = tags.getInteger("Protection");
+ prot += 1;
+ tags.setInteger("Protection", prot);
+
+ addToolTip(tool, color + tooltipName, color + key);
+ }
+
+ protected int addToolTip (ItemStack tool, String tooltip, String modifierTip)
+ {
+ NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool");
+ int tipNum = 0;
+ while (true)
+ {
+ tipNum++;
+ String tip = "Tooltip" + tipNum;
+ if (!tags.hasKey(tip))
+ {
+ tags.setString(tip, "");
+ String modTip = "ModifierTip" + tipNum;
+ String tag = tags.getString(modTip);
+ tags.setString(modTip, getProperName(modifierTip, tag));
+ return tipNum;
+ }
+ else
+ {
+ String modTip = "ModifierTip" + tipNum;
+ String tag = tags.getString(modTip);
+ if (tag.contains(modifierTip))
+ {
+ tags.setString(tip, "");
+ tag = tags.getString(modTip);
+ tags.setString(modTip, getProperName(modifierTip, tag));
+ return tipNum;
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersHood.java b/src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersHood.java
new file mode 100644
index 0000000..0ae93c0
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersHood.java
@@ -0,0 +1,82 @@
+package lance5057.tDefense.armor.renderers.cloth;
+
+import lance5057.tDefense.TinkersDefense;
+
+import org.lwjgl.opengl.GL11;
+
+import cpw.mods.fml.client.FMLClientHandler;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+import net.minecraft.util.ResourceLocation;
+
+/**
+ * ModelBiped - Either Mojang or a mod author
+ * Created using Tabula 4.1.1
+ */
+public class ModelTinkersHood extends ModelBiped {
+ public ModelRenderer Hood;
+ public ModelRenderer Flop;
+
+ public String[] colors;
+
+ public String[] textures;
+ public String defaultFolder;
+
+ public ModelTinkersHood(String[] colors, String defaultFolder, String[] textures)
+ {
+ super(1.1f, 0, 64,64);
+
+ this.textureWidth = 64;
+ this.textureHeight = 64;
+
+ this.colors = colors;
+ this.textures = textures;
+ this.defaultFolder = defaultFolder;
+
+ this.Hood = new ModelRenderer(this, 0, 44);
+ this.Hood.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Hood.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, 0.5F);
+ this.bipedHead.addChild(this.Hood);
+
+ this.Flop = new ModelRenderer(this, 0, 32);
+ this.Flop.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Flop.addBox(-4.0F, -9.6F, 0.3F, 8, 8, 4, 0.0F);
+ this.setRotateAngle(Flop, -0.4553564018453205F, 0.0F, 0.0F);
+ this.bipedHead.addChild(this.Flop);
+
+ this.bipedHeadwear.isHidden = true;
+ }
+
+ @Override
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+ GL11.glPushMatrix();
+ for(int i = 0; i<3; i++)
+ {
+ GL11.glPushMatrix();
+
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png"));
+
+ float size = 2.25f;
+ GL11.glScalef(1.5F / size, 1.5F / size, 1.5F / size);
+ GL11.glTranslatef(0.0F, 0F*f5, 0.0F);
+
+ int[] intColors = TinkersDefense.hexToRGB(colors[i]);
+ GL11.glColor3d((float)intColors[0]/255, (float)intColors[1]/255, (float)intColors[2]/255);
+
+ super.render(entity, f, f1, f2, f3, f4, f5);
+ setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ GL11.glPopMatrix();
+ }
+ GL11.glPopMatrix();
+ }
+
+ /**
+ * This is a helper function from Tabula to set the rotation of model parts
+ */
+ public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) {
+ modelRenderer.rotateAngleX = x;
+ modelRenderer.rotateAngleY = y;
+ modelRenderer.rotateAngleZ = z;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersRobe.java b/src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersRobe.java
new file mode 100644
index 0000000..63634c8
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersRobe.java
@@ -0,0 +1,127 @@
+package lance5057.tDefense.armor.renderers.cloth;
+
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+import net.minecraft.util.ResourceLocation;
+
+import org.lwjgl.opengl.GL11;
+
+import cpw.mods.fml.client.FMLClientHandler;
+
+/**
+ * ClothRobes - Undefined
+ * Created using Tabula 4.1.1
+ */
+public class ModelTinkersRobe extends ModelBiped {
+ public ModelRenderer Left;
+ public ModelRenderer Right;
+ public ModelRenderer RightBack;
+ public ModelRenderer LeftFront;
+ public ModelRenderer RightFront;
+ public ModelRenderer Belt;
+ public ModelRenderer LeftBack;
+
+ public String[] colors;
+
+ public String[] textures;
+ public String defaultFolder;
+
+ public ModelTinkersRobe(String[] colors, String defaultFolder, String[] textures)
+ {
+ super(1f, 0, 64,64);
+
+ this.colors = colors;
+ this.textures = textures;
+ this.defaultFolder = defaultFolder;
+
+ this.textureWidth = 64;
+ this.textureHeight = 64;
+
+ this.Right = new ModelRenderer(this, 18, 41);
+ this.Right.mirror = true;
+ this.Right.setRotationPoint(0F, 0F, 0F);
+ this.Right.addBox(-2.5F, 0.0F, -2.5F, 6, 11, 5, 0.01F);
+ this.setRotateAngle(Right, 0.0F, 0.0F, 0.08726646259971647F);
+ this.bipedRightLeg.addChild(this.Right);
+
+ this.RightBack = new ModelRenderer(this, 40, 43);
+ this.RightBack.mirror = true;
+ this.RightBack.setRotationPoint(0F, 0F, 0F);
+ this.RightBack.addBox(-2.5F, 0.27F, -0.6F, 6, 11, 3, 0.0F);
+ this.setRotateAngle(RightBack, 0.2617993877991494F, 0.0F, 0.08726646259971647F);
+ this.bipedRightLeg.addChild(this.RightBack);
+
+ this.LeftBack = new ModelRenderer(this, 40, 43);
+ this.LeftBack.setRotationPoint(0F, 0F, 0F);
+ this.LeftBack.addBox(-3.5F, 0.27F, -0.6F, 6, 11, 3, 0.0F);
+ this.setRotateAngle(LeftBack, 0.2617993877991494F, 0.0F, -0.08726646259971647F);
+ this.bipedLeftLeg.addChild(this.LeftBack);
+
+ this.Belt = new ModelRenderer(this, 0, 32);
+ this.Belt.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Belt.addBox(-6.8F, 10.0F, -3.0F, 10, 3, 6, 0.0F);
+ this.setRotateAngle(Belt, 0.0F, 0.0F, -0.13962634015954636F);
+ this.bipedBody.addChild(this.Belt);
+
+ this.Left = new ModelRenderer(this, 18, 41);
+ this.Left.setRotationPoint(0F, 0F, 0F);
+ this.Left.addBox(-3.5F, 0.0F, -2.5F, 6, 11, 5, 0.01F);
+ this.setRotateAngle(Left, 0.0F, 0.0F, -0.08726646259971647F);
+ this.bipedLeftLeg.addChild(this.Left);
+
+ this.LeftFront = new ModelRenderer(this, 0, 43);
+ this.LeftFront.setRotationPoint(0F, 0F, 0F);
+ this.LeftFront.addBox(-3.5F, 0.27F, -2.4F, 6, 11, 3, 0.0F);
+ this.setRotateAngle(LeftFront, -0.2617993877991494F, 0.0F, -0.08726646259971647F);
+ this.bipedLeftLeg.addChild(this.LeftFront);
+
+ this.RightFront = new ModelRenderer(this, 0, 43);
+ this.RightFront.mirror = true;
+ this.RightFront.setRotationPoint(0F, 0F, 0F);
+ this.RightFront.addBox(-2.5F, 0.27F, -2.4F, 6, 11, 3, 0.0F);
+ this.setRotateAngle(RightFront, -0.2617993877991494F, 0.0F, 0.08726646259971647F);
+ this.bipedRightLeg.addChild(this.RightFront);
+
+ //this.bipedBody.isHidden = true;
+ this.bipedHead.isHidden = true;
+ this.bipedHeadwear.isHidden = true;
+ //this.bipedRightLeg.isHidden = true;
+ //this.bipedLeftLeg.isHidden = true;
+ this.bipedRightArm.isHidden = true;
+ this.bipedLeftArm.isHidden = true;
+ }
+
+ @Override
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+ GL11.glPushMatrix();
+ for(int i = 0; i<2; i++)
+ {
+ GL11.glPushMatrix();
+
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png"));
+
+ float size = 1.45f;
+ GL11.glScalef(1.0F / size, 1.0F / size, 1.0F / size);
+ GL11.glTranslatef(0F, -1.5F*f5, -0F);
+
+ int[] intColors = TinkersDefense.hexToRGB(colors[i]);
+ GL11.glColor3d((float)intColors[0]/255, (float)intColors[1]/255, (float)intColors[2]/255);
+
+ super.render(entity, f, f1, f2, f3, f4, f5);
+ setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ GL11.glPopMatrix();
+ }
+ GL11.glPopMatrix();
+ }
+
+ /**
+ * This is a helper function from Tabula to set the rotation of model parts
+ */
+ public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) {
+ modelRenderer.rotateAngleX = x;
+ modelRenderer.rotateAngleY = y;
+ modelRenderer.rotateAngleZ = z;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersShawl.java b/src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersShawl.java
new file mode 100644
index 0000000..8ddb70b
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/cloth/ModelTinkersShawl.java
@@ -0,0 +1,140 @@
+package lance5057.tDefense.armor.renderers.cloth;
+
+import lance5057.tDefense.TinkersDefense;
+
+import org.lwjgl.opengl.GL11;
+
+import cpw.mods.fml.client.FMLClientHandler;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+import net.minecraft.util.ResourceLocation;
+
+/**
+ * ModelBiped - Either Mojang or a mod author
+ * Created using Tabula 4.1.1
+ */
+public class ModelTinkersShawl extends ModelBiped {
+ public ModelRenderer ShawlLeft1;
+ public ModelRenderer ShawlLeft2;
+ public ModelRenderer ShawlRight1;
+ public ModelRenderer ShawlRight2;
+ public ModelRenderer Button;
+ public ModelRenderer TopLeft;
+ public ModelRenderer TopRight;
+ public ModelRenderer ArmLeft;
+ public ModelRenderer ArmRight;
+ public ModelRenderer Chest;
+
+ public String[] colors;
+
+ public String[] textures;
+ public String defaultFolder;
+
+ public ModelTinkersShawl(String[] colors, String defaultFolder, String[] textures)
+ {
+ super(1f, 0, 64,64);
+
+ this.colors = colors;
+ this.textures = textures;
+ this.defaultFolder = defaultFolder;
+
+ this.textureWidth = 64;
+ this.textureHeight = 64;
+
+ this.ArmLeft = new ModelRenderer(this, 48, 48);
+ this.ArmLeft.mirror = true;
+ this.ArmLeft.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.ArmLeft.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, 0.0F);
+ this.bipedLeftArm.addChild(this.ArmLeft);
+
+ this.ArmRight = new ModelRenderer(this, 48, 48);
+ this.ArmRight.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.ArmRight.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, 0.0F);
+ this.bipedRightArm.addChild(this.ArmRight);
+
+ this.Chest = new ModelRenderer(this, 40, 32);
+ this.Chest.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Chest.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, 0.0F);
+ this.bipedBody.addChild(this.Chest);
+
+ this.TopRight = new ModelRenderer(this, 0, 52);
+ this.TopRight.mirror = true;
+ this.TopRight.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.TopRight.addBox(-3.5F, -2.3F, -3.0F, 9, 3, 6, -0.01F);
+ this.bipedRightArm.addChild(this.TopRight);
+
+ this.Button = new ModelRenderer(this, 0, 61);
+ this.Button.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Button.addBox(0.0F, 0.0F, -3.5F, 2, 2, 1, 0.0F);
+ this.setRotateAngle(Button, 0.0F, 0.0F, 0.7853981633974483F);
+ this.bipedBody.addChild(this.Button);
+
+ this.TopLeft = new ModelRenderer(this, 0, 52);
+ this.TopLeft.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.TopLeft.addBox(-5.5F, -2.3F, -3.0F, 9, 3, 6, -0.01F);
+ this.bipedLeftArm.addChild(this.TopLeft);
+
+ this.ShawlRight1 = new ModelRenderer(this, 0, 32);
+ this.ShawlRight1.mirror = true;
+ this.ShawlRight1.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.ShawlRight1.addBox(-4.0F, -1.3F, -3.0F, 6, 5, 6, 0.0F);
+ this.setRotateAngle(ShawlRight1, 0.0F, 0.0F, 0.2617993877991494F);
+ this.bipedRightArm.addChild(this.ShawlRight1);
+
+ this.ShawlRight2 = new ModelRenderer(this, 0, 43);
+ this.ShawlRight2.mirror = true;
+ this.ShawlRight2.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.ShawlRight2.addBox(-1.9F, 0.8F, -3.0F, 6, 3, 6, 0.01F);
+ this.setRotateAngle(ShawlRight2, 0.0F, 0.0F, -0.6981317007977318F);
+ this.bipedRightArm.addChild(this.ShawlRight2);
+
+ this.ShawlLeft1 = new ModelRenderer(this, 0, 32);
+ this.ShawlLeft1.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.ShawlLeft1.addBox(-2.0F, -1.3F, -3.0F, 6, 5, 6, 0.0F);
+ this.setRotateAngle(ShawlLeft1, 0.0F, 0.0F, -0.2617993877991494F);
+ this.bipedLeftArm.addChild(this.ShawlLeft1);
+
+ this.ShawlLeft2 = new ModelRenderer(this, 0, 43);
+ this.ShawlLeft2.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.ShawlLeft2.addBox(-4.1F, 0.8F, -3.0F, 6, 3, 6, 0.1F);
+ this.setRotateAngle(ShawlLeft2, 0.0F, 0.0F, 0.6981317007977318F);
+ this.bipedLeftArm.addChild(this.ShawlLeft2);
+
+ this.bipedHead.isHidden = true;
+ this.bipedHeadwear.isHidden = true;
+ this.bipedCloak.isHidden = true;
+ }
+
+ @Override
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+ GL11.glPushMatrix();
+ for(int i = 0; i<3; i++)
+ {
+ GL11.glPushMatrix();
+
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png"));
+
+ float size = 1.5f;
+ GL11.glScalef(1.0F / size, 1.0F / size, 1.0F / size);
+ GL11.glTranslatef(0F, -0F*f5, -0F);
+
+ int[] intColors = TinkersDefense.hexToRGB(colors[i]);
+ GL11.glColor3d((float)intColors[0]/255, (float)intColors[1]/255, (float)intColors[2]/255);
+
+ super.render(entity, f, f1, f2, f3, f4, f5);
+ setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ GL11.glPopMatrix();
+ }
+ GL11.glPopMatrix();
+ }
+
+ /**
+ * This is a helper function from Tabula to set the rotation of model parts
+ */
+ public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) {
+ modelRenderer.rotateAngleX = x;
+ modelRenderer.rotateAngleY = y;
+ modelRenderer.rotateAngleZ = z;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersBreastplate.java b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersBreastplate.java
index 7c99478..d1c3fd5 100644
--- a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersBreastplate.java
+++ b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersBreastplate.java
@@ -100,7 +100,7 @@ public class ModelTinkersBreastplate extends ModelBiped
this.setRotateAngle(PauldronL, 0.0F, -0.0F, -0.4363323129985824F);
this.bipedLeftArm.addChild(this.PauldronL);
- this.ArmR.offsetX = this.ArmR.offsetX + 0.04f;
+ // this.ArmR.offsetX = this.ArmR.offsetX + 0.04f;
this.bipedHead.isHidden = true;
this.bipedHeadwear.isHidden = true;
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersHelm.java b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersHelm.java
index c210df7..5c87cdb 100644
--- a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersHelm.java
+++ b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersHelm.java
@@ -68,9 +68,9 @@ public class ModelTinkersHelm extends ModelBiped
FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png"));
- float size = 1.75f;
+ float size = 2.5f;
GL11.glScalef(1.5F / size, 1.5F / size, 1.5F / size);
- GL11.glTranslatef(0.0F, -12F * f5, 0.0F);
+ GL11.glTranslatef(0.0F, -0F * f5, 0.0F);
int[] intColors = TinkersDefense.hexToRGB(colors[i]);
GL11.glColor3d((float)intColors[0]/255, (float)intColors[1]/255, (float)intColors[2]/255);
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersSabatons.java b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersSabatons.java
index 0d7fd15..e8f8963 100644
--- a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersSabatons.java
+++ b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersSabatons.java
@@ -134,9 +134,9 @@ public class ModelTinkersSabatons extends ModelBiped
FMLClientHandler.instance().getClient().renderEngine.bindTexture(texture);
- float size =0.75f;
+ float size =1.5f;
GL11.glScalef(1.0F / size, 1.0F / size, 1.0F / size);
- GL11.glTranslatef(0.0F, -12.4F*f5, 0.0F);
+ GL11.glTranslatef(0.0F, -1F*f5, 0.0F);
int[] intColors = TinkersDefense.hexToRGB(colors[i]);
GL11.glColor3d((float)intColors[0]/255, (float)intColors[1]/255, (float)intColors[2]/255);
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersBoots.java b/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersBoots.java
new file mode 100644
index 0000000..9144d38
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersBoots.java
@@ -0,0 +1,91 @@
+package lance5057.tDefense.armor.renderers.light;
+
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+import net.minecraft.util.ResourceLocation;
+
+import org.lwjgl.opengl.GL11;
+
+import cpw.mods.fml.client.FMLClientHandler;
+
+/**
+ * ModelBiped - Either Mojang or a mod author
+ * Created using Tabula 4.1.1
+ */
+public class ModelTinkersBoots extends ModelBiped
+{
+ public ModelRenderer LegR;
+ public ModelRenderer LegL;
+ public ModelRenderer FootL;
+ public ModelRenderer FootR;
+
+ public String[] colors;
+
+ public String[] textures;
+ public String defaultFolder;
+
+ public ModelTinkersBoots(String[] colors, String defaultFolder, String[] textures) {
+ super(1.1f, 0, 64,64);
+
+ this.textureWidth = 64;
+ this.textureHeight = 64;
+
+ this.colors = colors;
+ this.textures = textures;
+ this.defaultFolder = defaultFolder;
+
+ this.FootL = new ModelRenderer(this, 0, 43);
+ this.FootL.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.FootL.addBox(-2.0F, 10.0F, -3.0F, 4, 2, 1, 0.0F);
+ this.bipedLeftLeg.addChild(this.FootL);
+
+ this.LegL = new ModelRenderer(this, 0, 48);
+ this.LegL.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.LegL.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F);
+ this.bipedLeftLeg.addChild(this.LegL);
+
+ this.FootR = new ModelRenderer(this, 0, 43);
+ this.FootR.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.FootR.addBox(-2.0F, 10.0F, -3.0F, 4, 2, 1, 0.0F);
+ this.bipedRightLeg.addChild(this.FootR);
+
+ this.LegR = new ModelRenderer(this, 0, 48);
+ this.LegR.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.LegR.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F);
+ this.bipedRightLeg.addChild(this.LegR);
+ }
+
+ @Override
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+ GL11.glPushMatrix();
+ for(int i = 0; i<3; i++)
+ {
+ GL11.glPushMatrix();
+
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png"));
+
+ float size =1.45f;
+ GL11.glScalef(1.0F / size, 1.0F / size, 1.0F / size);
+ GL11.glTranslatef(0.0F, -1F*f5, 0.0F);
+
+ int[] intColors = TinkersDefense.hexToRGB(colors[i]);
+ GL11.glColor3d((float)intColors[0]/255, (float)intColors[1]/255, (float)intColors[2]/255);
+
+ super.render(entity, f, f1, f2, f3, f4, f5);
+ setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ GL11.glPopMatrix();
+ }
+ GL11.glPopMatrix();
+ }
+
+ /**
+ * This is a helper function from Tabula to set the rotation of model parts
+ */
+ public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) {
+ modelRenderer.rotateAngleX = x;
+ modelRenderer.rotateAngleY = y;
+ modelRenderer.rotateAngleZ = z;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersChausses.java b/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersChausses.java
new file mode 100644
index 0000000..c9326e7
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersChausses.java
@@ -0,0 +1,117 @@
+package lance5057.tDefense.armor.renderers.light;
+
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+import net.minecraft.util.ResourceLocation;
+
+import org.lwjgl.opengl.GL11;
+
+import cpw.mods.fml.client.FMLClientHandler;
+
+/**
+ * ModelBiped - Either Mojang or a mod author
+ * Created using Tabula 4.1.1
+ */
+public class ModelTinkersChausses extends ModelBiped {
+ public ModelRenderer LegL;
+ public ModelRenderer FrontL;
+ public ModelRenderer HipGuardL;
+ public ModelRenderer HipGuardR;
+ public ModelRenderer LegR;
+ public ModelRenderer BackL;
+ public ModelRenderer FrontR;
+ public ModelRenderer BackR;
+
+ public String[] colors;
+
+ public String[] textures;
+ public String defaultFolder;
+
+ public ModelTinkersChausses(String[] colors, String defaultFolder, String[] textures) {
+ super(1.1f, 0, 64,64);
+
+ this.textureWidth = 64;
+ this.textureHeight = 64;
+
+ this.colors = colors;
+ this.textures = textures;
+ this.defaultFolder = defaultFolder;
+
+ this.HipGuardR = new ModelRenderer(this, 10, 37);
+ this.HipGuardR.setRotationPoint(0F, 0F, 0F);
+ this.HipGuardR.addBox(-2.5F, 0.0F, -2.5F, 4, 6, 5, 0.0F);
+ this.setRotateAngle(HipGuardR, 0.0F, 0.0F, 0.17453292519943295F);
+ this.bipedRightLeg.addChild(this.HipGuardR);
+
+ this.LegL = new ModelRenderer(this, 0, 48);
+ this.LegL.setRotationPoint(0F, 0F, 0F);
+ this.LegL.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F);
+ this.bipedLeftLeg.addChild(this.LegL);
+
+ this.BackR = new ModelRenderer(this, 0, 40);
+ this.BackR.setRotationPoint(0F, 0F, 0F);
+ this.BackR.addBox(-0.1F, 0.0F, 1.7F, 4, 7, 1, 0.01F);
+ this.bipedRightLeg.addChild(this.BackR);
+
+ this.FrontL = new ModelRenderer(this, 0, 40);
+ this.FrontL.setRotationPoint(0F, 0F, 0F);
+ this.FrontL.addBox(-4.0F, 0.0F, -2.7F, 4, 7, 1, 0.0F);
+ this.bipedLeftLeg.addChild(this.FrontL);
+
+ this.LegR = new ModelRenderer(this, 0, 48);
+ this.LegR.setRotationPoint(0F, 0F, 0F);
+ this.LegR.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F);
+ this.bipedRightLeg.addChild(this.LegR);
+
+ this.BackL = new ModelRenderer(this, 0, 40);
+ this.BackL.setRotationPoint(0F, 0F, 0F);
+ this.BackL.addBox(-4.0F, 0.0F, 1.7F, 4, 7, 1, 0.0F);
+ this.bipedLeftLeg.addChild(this.BackL);
+
+ this.FrontR = new ModelRenderer(this, 0, 40);
+ this.FrontR.setRotationPoint(0F, 0F, 0F);
+ this.FrontR.addBox(-0.1F, 0.0F, -2.7F, 4, 7, 1, 0.01F);
+ this.bipedRightLeg.addChild(this.FrontR);
+
+ this.HipGuardL = new ModelRenderer(this, 10, 37);
+ this.HipGuardL.mirror = true;
+ this.HipGuardL.setRotationPoint(0F, 0F, 0F);
+ this.HipGuardL.addBox(-1.5F, 0.0F, -2.5F, 4, 6, 5, 0.0F);
+ this.setRotateAngle(HipGuardL, 0.0F, 0.0F, -0.17453292519943295F);
+ this.bipedLeftLeg.addChild(this.HipGuardL);
+ }
+
+ @Override
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+ GL11.glPushMatrix();
+ for(int i = 0; i<2; i++)
+ {
+ GL11.glPushMatrix();
+
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png"));
+
+ float size =1.5f;
+ GL11.glScalef(1.0F / size, 1.0F / size, 1.0F / size);
+ GL11.glTranslatef(0F, -1F*f5, -0F);
+
+ int[] intColors = TinkersDefense.hexToRGB(colors[i]);
+ GL11.glColor3d((float)intColors[0]/255, (float)intColors[1]/255, (float)intColors[2]/255);
+
+ super.render(entity, f, f1, f2, f3, f4, f5);
+ setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ GL11.glPopMatrix();
+ }
+ GL11.glPopMatrix();
+ }
+
+ /**
+ * This is a helper function from Tabula to set the rotation of model parts
+ */
+ public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) {
+ modelRenderer.rotateAngleX = x;
+ modelRenderer.rotateAngleY = y;
+ modelRenderer.rotateAngleZ = z;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersCoif.java b/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersCoif.java
new file mode 100644
index 0000000..0589ccc
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersCoif.java
@@ -0,0 +1,78 @@
+package lance5057.tDefense.armor.renderers.light;
+
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+import net.minecraft.util.ResourceLocation;
+
+import org.lwjgl.opengl.GL11;
+
+import cpw.mods.fml.client.FMLClientHandler;
+
+/**
+ * ModelBiped - Either Mojang or a mod author
+ * Created using Tabula 4.1.1
+ */
+public class ModelTinkersCoif extends ModelBiped {
+ public ModelRenderer Coif;
+ public ModelRenderer Head;
+
+ public String[] colors;
+
+ public String[] textures;
+ public String defaultFolder;
+
+ public ModelTinkersCoif(String[] colors, String defaultFolder, String[] textures) {
+ super(1.1f, 0, 64,64);
+
+ this.textureWidth = 64;
+ this.textureHeight = 64;
+
+ this.colors = colors;
+ this.textures = textures;
+ this.defaultFolder = defaultFolder;
+
+ this.Head = new ModelRenderer(this, 32, 48);
+ this.Head.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Head.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, 0.0F);
+ this.bipedHead.addChild(this.Head);
+
+ this.Coif = new ModelRenderer(this, 0, 46);
+ this.Coif.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Coif.addBox(-4.0F, -8.0F, -4.0F, 8, 10, 8, 0.5F);
+ this.bipedHead.addChild(this.Coif);
+ }
+
+ @Override
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+ GL11.glPushMatrix();
+ for(int i = 0; i<3; i++)
+ {
+ GL11.glPushMatrix();
+
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png"));
+
+ float size = 2.25f;
+ GL11.glScalef(1.5F / size, 1.5F / size, 1.5F / size);
+ GL11.glTranslatef(0.0F, 0F*f5, 0.0F);
+
+ int[] intColors = TinkersDefense.hexToRGB(colors[i]);
+ GL11.glColor3d((float)intColors[0]/255, (float)intColors[1]/255, (float)intColors[2]/255);
+
+ super.render(entity, f, f1, f2, f3, f4, f5);
+ setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ GL11.glPopMatrix();
+ }
+ GL11.glPopMatrix();
+ }
+
+ /**
+ * This is a helper function from Tabula to set the rotation of model parts
+ */
+ public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) {
+ modelRenderer.rotateAngleX = x;
+ modelRenderer.rotateAngleY = y;
+ modelRenderer.rotateAngleZ = z;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersHalberd.java b/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersHalberd.java
new file mode 100644
index 0000000..4d4b46b
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/light/ModelTinkersHalberd.java
@@ -0,0 +1,130 @@
+package lance5057.tDefense.armor.renderers.light;
+
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+import net.minecraft.util.ResourceLocation;
+
+import org.lwjgl.opengl.GL11;
+
+import cpw.mods.fml.client.FMLClientHandler;
+
+/**
+ * ModelBiped - Either Mojang or a mod author
+ * Created using Tabula 4.1.1
+ */
+public class ModelTinkersHalberd extends ModelBiped {
+ public ModelRenderer Pauldron1;
+ public ModelRenderer Pauldron2;
+ public ModelRenderer Pauldron3;
+ public ModelRenderer ArmR;
+ public ModelRenderer Body;
+ public ModelRenderer Pauldron1_1;
+ public ModelRenderer Pauldron2_1;
+ public ModelRenderer Pauldron3_1;
+ public ModelRenderer ArmL;
+
+ public String[] colors;
+
+ public String[] textures;
+ public String defaultFolder;
+
+ public ModelTinkersHalberd(String[] colors, String defaultFolder, String[] textures) {
+ super(1.1f, 0, 64,64);
+
+ this.textureWidth = 64;
+ this.textureHeight = 64;
+
+ this.colors = colors;
+ this.textures = textures;
+ this.defaultFolder = defaultFolder;
+
+ this.Pauldron2_1 = new ModelRenderer(this, 0, 32);
+ this.Pauldron2_1.mirror = true;
+ this.Pauldron2_1.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron2_1.addBox(-0.7F, -2.7F, -2.0F, 3, 3, 4, 0.1F);
+ this.setRotateAngle(Pauldron2_1, 0.0F, 0.0F, 0.2617993877991494F);
+ this.bipedLeftArm.addChild(this.Pauldron2_1);
+
+ this.Body = new ModelRenderer(this, 16, 48);
+ this.Body.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Body.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, 0.0F);
+ this.bipedBody.addChild(this.Body);
+
+ this.Pauldron1_1 = new ModelRenderer(this, 30, 32);
+ this.Pauldron1_1.mirror = true;
+ this.Pauldron1_1.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron1_1.addBox(0.5F, -1.9F, -2.5F, 3, 4, 5, 0.0F);
+ this.setRotateAngle(Pauldron1_1, 0.0F, 0.0F, -0.2617993877991494F);
+ this.bipedLeftArm.addChild(this.Pauldron1_1);
+
+ this.Pauldron3 = new ModelRenderer(this, 16, 32);
+ this.Pauldron3.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron3.addBox(-1.2F, -1.5F, -2.5F, 2, 2, 5, 0.1F);
+ this.setRotateAngle(Pauldron3, 0.0F, 0.0F, -0.2617993877991494F);
+ this.bipedRightArm.addChild(this.Pauldron3);
+
+ this.ArmL = new ModelRenderer(this, 0, 48);
+ this.ArmL.mirror = true;
+ this.ArmL.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.ArmL.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, 0.0F);
+ this.bipedLeftArm.addChild(this.ArmL);
+
+ this.Pauldron1 = new ModelRenderer(this, 30, 32);
+ this.Pauldron1.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron1.addBox(-3.5F, -1.9F, -2.5F, 3, 4, 5, 0.0F);
+ this.setRotateAngle(Pauldron1, 0.0F, 0.0F, 0.2617993877991494F);
+ this.bipedRightArm.addChild(this.Pauldron1);
+
+ this.Pauldron3_1 = new ModelRenderer(this, 16, 32);
+ this.Pauldron3_1.mirror = true;
+ this.Pauldron3_1.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron3_1.addBox(-0.8F, -1.5F, -2.5F, 2, 2, 5, 0.1F);
+ this.setRotateAngle(Pauldron3_1, 0.0F, 0.0F, 0.2617993877991494F);
+ this.bipedLeftArm.addChild(this.Pauldron3_1);
+
+ this.Pauldron2 = new ModelRenderer(this, 0, 32);
+ this.Pauldron2.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron2.addBox(-2.3F, -2.7F, -2.0F, 3, 3, 4, 0.1F);
+ this.setRotateAngle(Pauldron2, 0.0F, 0.0F, -0.2617993877991494F);
+ this.bipedRightArm.addChild(this.Pauldron2);
+
+ this.ArmR = new ModelRenderer(this, 0, 48);
+ this.ArmR.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.ArmR.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, 0.0F);
+ this.bipedRightArm.addChild(this.ArmR);
+ }
+
+ @Override
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+ GL11.glPushMatrix();
+ for(int i = 0; i<3; i++)
+ {
+ GL11.glPushMatrix();
+
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png"));
+
+ float size = 2.25f;
+ GL11.glScalef(1.5F / size, 1.5F / size, 1.5F / size);
+ GL11.glTranslatef(0.0F, 0F*f5, 0.0F);
+
+ int[] intColors = TinkersDefense.hexToRGB(colors[i]);
+ GL11.glColor3d((float)intColors[0]/255, (float)intColors[1]/255, (float)intColors[2]/255);
+
+ super.render(entity, f, f1, f2, f3, f4, f5);
+ setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ GL11.glPopMatrix();
+ }
+ GL11.glPopMatrix();
+ }
+
+ /**
+ * This is a helper function from Tabula to set the rotation of model parts
+ */
+ public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) {
+ modelRenderer.rotateAngleX = x;
+ modelRenderer.rotateAngleY = y;
+ modelRenderer.rotateAngleZ = z;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/core/TD_Patterns.java b/src/main/java/lance5057/tDefense/core/TD_Patterns.java
index 66cbefa..7b33e18 100644
--- a/src/main/java/lance5057/tDefense/core/TD_Patterns.java
+++ b/src/main/java/lance5057/tDefense/core/TD_Patterns.java
@@ -9,7 +9,7 @@ import tconstruct.tools.items.Pattern;
import tconstruct.util.Reference;
public class TD_Patterns extends Pattern {
- private static final String[] patternName = new String[] {"rivets","clasp","armorplate","chainmaille"};
+ private static final String[] patternName = new String[] {"rivets","clasp","armorplate","cloth","chainmaille"};
public TD_Patterns(String patternType, String name) {
super(patternName, getPatternNames(patternName, patternType), "patterns/");
diff --git a/src/main/java/lance5057/tDefense/core/blocks/ore/TD_Ore.java b/src/main/java/lance5057/tDefense/core/blocks/ore/TD_Ore.java
new file mode 100644
index 0000000..708abbe
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/core/blocks/ore/TD_Ore.java
@@ -0,0 +1,39 @@
+package lance5057.tDefense.core.blocks.ore;
+
+import java.util.Random;
+
+import lance5057.tDefense.Reference;
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.block.Block;
+import net.minecraft.block.material.Material;
+import net.minecraft.item.Item;
+
+public class TD_Ore extends Block
+{
+ Item drops;
+ public TD_Ore(Material mat, String name, Item drop)
+ {
+ super(mat);
+ this.setBlockName(name + "ore");
+ this.setBlockTextureName(Reference.MOD_ID + ":" + name + "ore");
+ this.setCreativeTab(TinkersDefense.tabName);
+ this.setStepSound(soundTypeStone);
+ this.setHardness(10.0f);
+ this.setResistance(20.0f);
+ setHarvestLevel("pickaxe",2);
+
+ drops = drop;
+ }
+
+ @Override
+ public Item getItemDropped(int metadata, Random random, int fortune) {
+ return drops;
+ }
+
+ @Override
+ public int quantityDropped(int meta, int fortune, Random random)
+ {
+ int rand = random.nextInt(fortune + 1) + 1;
+ return rand;
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/core/events/TDEventHandler.java b/src/main/java/lance5057/tDefense/core/events/TDEventHandler.java
index 845419c..51612a6 100644
--- a/src/main/java/lance5057/tDefense/core/events/TDEventHandler.java
+++ b/src/main/java/lance5057/tDefense/core/events/TDEventHandler.java
@@ -6,6 +6,7 @@ import mods.battlegear2.api.PlayerEventChild.ShieldBlockEvent;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.item.EntityItem;
+import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.projectile.EntityFireball;
import net.minecraft.entity.projectile.EntityLargeFireball;
import net.minecraft.item.ItemStack;
@@ -15,12 +16,18 @@ import net.minecraft.potion.PotionEffect;
import net.minecraft.util.Vec3;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.living.LivingDropsEvent;
+import net.minecraftforge.event.entity.living.LivingHurtEvent;
import net.minecraftforge.event.entity.living.LivingSpawnEvent;
import tconstruct.library.TConstructRegistry;
import tconstruct.library.event.PartBuilderEvent;
import tconstruct.library.tools.BowstringMaterial;
+import cpw.mods.fml.common.Optional;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
+@Optional.InterfaceList({
+ @Optional.Interface(modid = "battlegear2", iface = "mods.battlegear2.api.PlayerEventChild.ShieldBlockEvent"),
+})
+
public class TDEventHandler {
public TDEventHandler() {
@@ -47,6 +54,7 @@ public class TDEventHandler {
}
@SubscribeEvent
+ @Optional.Method(modid = "battlegear2")
public void TD_ShieldBlock(ShieldBlockEvent event)
{
NBTTagCompound tags = event.shield.getTagCompound().getCompoundTag("InfiTool");
@@ -103,20 +111,26 @@ public class TDEventHandler {
}
}
}
-
- @SubscribeEvent
- public void dropEasterEggs(LivingDropsEvent event)
- {
- if(!event.entityLiving.worldObj.isRemote)
- {
- if(event.entityLiving.getHeldItem() != null)
- if(event.entityLiving.getHeldItem().getItem() == TinkersDefense.item_RedMintcane)
- event.drops.add(new EntityItem(event.entityLiving.worldObj, event.entityLiving.posX, event.entityLiving.posY, event.entityLiving.posZ, new ItemStack(TinkersDefense.item_RedMintcane,1,0)));
- else
- event.drops.add(new EntityItem(event.entityLiving.worldObj, event.entityLiving.posX, event.entityLiving.posY, event.entityLiving.posZ, new ItemStack(TinkersDefense.item_GreenMintcane,1,0)));
- }
- }
+// public void TD_LivingHurt(LivingHurtEvent event)
+// {
+// if(event.entityLiving instanceof EntityPlayer)
+// event.entityLiving
+// }
+
+// @SubscribeEvent
+// public void dropEasterEggs(LivingDropsEvent event)
+// {
+// if(!event.entityLiving.worldObj.isRemote)
+// {
+// if(event.entityLiving.getHeldItem() != null)
+// if(event.entityLiving.getHeldItem().getItem() == TinkersDefense.item_RedMintcane)
+// event.drops.add(new EntityItem(event.entityLiving.worldObj, event.entityLiving.posX, event.entityLiving.posY, event.entityLiving.posZ, new ItemStack(TinkersDefense.item_RedMintcane,1,0)));
+// if(event.entityLiving.getHeldItem().getItem() == TinkersDefense.item_GreenMintcane)
+// event.drops.add(new EntityItem(event.entityLiving.worldObj, event.entityLiving.posX, event.entityLiving.posY, event.entityLiving.posZ, new ItemStack(TinkersDefense.item_GreenMintcane,1,0)));
+//
+// }
+// }
@SubscribeEvent
public void giveCandyToUndead(LivingSpawnEvent event)
diff --git a/src/main/java/lance5057/tDefense/core/items/RawGem.java b/src/main/java/lance5057/tDefense/core/items/RawGem.java
new file mode 100644
index 0000000..ed08b32
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/core/items/RawGem.java
@@ -0,0 +1,16 @@
+package lance5057.tDefense.core.items;
+
+import lance5057.tDefense.Reference;
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.item.Item;
+
+public class RawGem extends Item
+{
+ public RawGem(String name)
+ {
+ this.setCreativeTab(TinkersDefense.tabName);
+ this.setMaxStackSize(64);
+ this.setUnlocalizedName("raw" + name);
+ this.setTextureName(Reference.MOD_ID + ":raw" + name);
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/core/tools/HeaterShield.java b/src/main/java/lance5057/tDefense/core/tools/HeaterShield.java
index e35ba7c..d349b59 100644
--- a/src/main/java/lance5057/tDefense/core/tools/HeaterShield.java
+++ b/src/main/java/lance5057/tDefense/core/tools/HeaterShield.java
@@ -126,26 +126,6 @@ public class HeaterShield extends Shield {
}
@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 String getHarvestType() {
return "shield";
}
diff --git a/src/main/java/lance5057/tDefense/core/tools/RoundShield.java b/src/main/java/lance5057/tDefense/core/tools/RoundShield.java
index b25ae1a..f6eff84 100644
--- a/src/main/java/lance5057/tDefense/core/tools/RoundShield.java
+++ b/src/main/java/lance5057/tDefense/core/tools/RoundShield.java
@@ -119,26 +119,6 @@ public class RoundShield extends Shield {
}
@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 String getHarvestType() {
return "shield";
}
diff --git a/src/main/java/lance5057/tDefense/core/tools/Shield.java b/src/main/java/lance5057/tDefense/core/tools/Shield.java
index c47b5a7..466ae13 100644
--- a/src/main/java/lance5057/tDefense/core/tools/Shield.java
+++ b/src/main/java/lance5057/tDefense/core/tools/Shield.java
@@ -1,5 +1,7 @@
package lance5057.tDefense.core.tools;
+import java.util.List;
+
import mods.battlegear2.api.ISheathed;
import mods.battlegear2.api.shield.IArrowCatcher;
import mods.battlegear2.api.shield.IArrowDisplay;
@@ -16,6 +18,8 @@ import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.DamageSource;
+import net.minecraft.util.EnumChatFormatting;
+import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
import tconstruct.library.tools.ToolCore;
import cpw.mods.fml.common.Optional;
@@ -258,4 +262,25 @@ public class Shield extends ToolCore implements IShield, ISheathed,
public String getIconSuffix(int arg0) {
return null;
}
+
+ @Override
+ @Optional.Method(modid = "battlegear2")
+ @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")));
+ }
+ }
} \ No newline at end of file
diff --git a/src/main/java/lance5057/tDefense/core/tools/TinkerWrench.java b/src/main/java/lance5057/tDefense/core/tools/TinkerWrench.java
index 0714823..6ae9257 100644
--- a/src/main/java/lance5057/tDefense/core/tools/TinkerWrench.java
+++ b/src/main/java/lance5057/tDefense/core/tools/TinkerWrench.java
@@ -1,5 +1,6 @@
package lance5057.tDefense.core.tools;
+import cpw.mods.fml.common.Optional;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.nbt.NBTTagCompound;
@@ -8,6 +9,9 @@ import tconstruct.library.tools.Weapon;
import tconstruct.tools.TinkerTools;
import buildcraft.api.tools.IToolWrench;
+@Optional.InterfaceList({
+ @Optional.Interface(modid = "buildcraft", iface = "buildcraft.api.tools.IToolWrench")
+})
public class TinkerWrench extends Weapon implements IToolWrench {
int induceDamage = 0;
@@ -83,6 +87,7 @@ public class TinkerWrench extends Weapon implements IToolWrench {
}
@Override
+ @Optional.Method(modid = "buildcraft")
public boolean canWrench(EntityPlayer player, int x, int y, int z) {
NBTTagCompound tags = player.inventory.getCurrentItem()
.getTagCompound().getCompoundTag("InfiTool");
diff --git a/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/BotaniaToolMods.java b/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/BotaniaToolMods.java
index 0ce9eb2..b93f5e8 100644
--- a/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/BotaniaToolMods.java
+++ b/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/BotaniaToolMods.java
@@ -9,10 +9,10 @@ import net.minecraft.potion.PotionEffect;
import net.minecraft.world.World;
import tconstruct.library.TConstructRegistry;
import tconstruct.library.tools.ToolCore;
-import vazkii.botania.common.entity.EntityManaBurst;
-import vazkii.botania.common.item.ModItems;
-import vazkii.botania.common.item.equipment.tool.ToolCommons;
-import vazkii.botania.common.item.equipment.tool.terrasteel.ItemTerraSword;
+//import vazkii.botania.common.entity.EntityManaBurst;
+//import vazkii.botania.common.item.ModItems;
+//import vazkii.botania.common.item.equipment.tool.ToolCommons;
+//import vazkii.botania.common.item.equipment.tool.terrasteel.ItemTerraSword;
import cpw.mods.fml.common.Optional;
@Optional.InterfaceList({
@@ -31,18 +31,18 @@ public class BotaniaToolMods {
public void UpdateTerraCore(ToolCore tool, ItemStack stack, World world, Entity entity, NBTTagCompound tags)
{
if(entity instanceof EntityPlayer) {
- EntityPlayer player = (EntityPlayer) entity;
- PotionEffect haste = player.getActivePotionEffect(Potion.digSpeed);
- float check = haste == null ? 0.16666667F : haste.getAmplifier() == 1 ? 0.5F : 0.4F;
+// EntityPlayer player = (EntityPlayer) entity;
+// PotionEffect haste = player.getActivePotionEffect(Potion.digSpeed);
+// float check = haste == null ? 0.16666667F : haste.getAmplifier() == 1 ? 0.5F : 0.4F;
- if(player.getCurrentEquippedItem() == stack && player.swingProgress == check && !world.isRemote && world.rand.nextInt(2) == 0)
- {
- int color = TConstructRegistry.getMaterial(tags.getInteger("Head")).primaryColor();
- EntityManaBurst burst = ((ItemTerraSword)ModItems.terraSword).getBurst(player, new ItemStack(ModItems.terraSword));
- burst.setColor(color);
- world.spawnEntityInWorld(burst);
- ToolCommonSoundAtEntity(player, "botania:terraBlade", 0.4F, 1.4F);
- }
+// if(player.getCurrentEquippedItem() == stack && player.swingProgress == check && !world.isRemote && world.rand.nextInt(2) == 0)
+// {
+// int color = TConstructRegistry.getMaterial(tags.getInteger("Head")).primaryColor();
+// EntityManaBurst burst = ((ItemTerraSword)ModItems.terraSword).getBurst(player, new ItemStack(ModItems.terraSword));
+// burst.setColor(color);
+// world.spawnEntityInWorld(burst);
+// ToolCommonSoundAtEntity(player, "botania:terraBlade", 0.4F, 1.4F);
+// }
}
}
diff --git a/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/TDefenseActiveToolMod.java b/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/TDefenseActiveToolMod.java
index af124dc..1f8f8cd 100644
--- a/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/TDefenseActiveToolMod.java
+++ b/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/TDefenseActiveToolMod.java
@@ -17,14 +17,14 @@ import tconstruct.library.tools.ToolCore;
public class TDefenseActiveToolMod extends ActiveToolMod
{
TdefenseToolMods TDMods = new TdefenseToolMods();
- BotaniaToolMods FlowerMods = new BotaniaToolMods();
+ //BotaniaToolMods FlowerMods = new BotaniaToolMods();
@Override
public void updateTool(ToolCore tool, ItemStack stack, World world, Entity entity)
{
if(stack.hasTagCompound() && stack.getTagCompound().hasKey("InfiTool"))
- {
+ {
NBTTagCompound tags = stack.getTagCompound().getCompoundTag("InfiTool");
if (!tags.getBoolean("Broken"))
@@ -33,10 +33,10 @@ public class TDefenseActiveToolMod extends ActiveToolMod
TDMods.UpdateAll(tool, stack, world, entity, tags);
//Botania
- if(Loader.isModLoaded("Botania"))
- {
- FlowerMods.UpdateAll(tool, stack, world, entity, tags);
- }
+// if(Loader.isModLoaded("Botania"))
+// {
+// FlowerMods.UpdateAll(tool, stack, world, entity, tags);
+// }
}
}
diff --git a/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/TdefenseToolMods.java b/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/TdefenseToolMods.java
index d75ec13..12d84d6 100644
--- a/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/TdefenseToolMods.java
+++ b/src/main/java/lance5057/tDefense/core/tools/modifiers/ActiveToolMods/TdefenseToolMods.java
@@ -48,4 +48,9 @@ public class TdefenseToolMods
}
}
}
+
+ public void UpdateTorchArrow(ToolCore tool, ItemStack stack, World world, Entity entity)
+ {
+ //entity.worldObj.ent
+ }
}
diff --git a/src/main/java/lance5057/tDefense/core/tools/modifiers/Botania/modifierCorpseIvy.java b/src/main/java/lance5057/tDefense/core/tools/modifiers/Botania/modifierCorpseIvy.java
new file mode 100644
index 0000000..b2211b3
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/core/tools/modifiers/Botania/modifierCorpseIvy.java
@@ -0,0 +1,67 @@
+package lance5057.tDefense.core.tools.modifiers.Botania;
+
+import java.util.Arrays;
+import java.util.List;
+
+import lance5057.tDefense.core.tools.Shield;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import tconstruct.library.tools.ToolCore;
+import tconstruct.modifiers.tools.ItemModTypeFilter;
+
+public class modifierCorpseIvy extends ItemModTypeFilter
+{
+ String tooltipName;
+ String guiType;
+
+ public modifierCorpseIvy(String type, int effect, ItemStack[] items, int[] values)
+ {
+ super(effect, "corpseivy", items, values);
+ tooltipName = "\u00A7fCorpse Drinker";
+ guiType = type;
+ }
+
+ @Override
+ protected boolean canModify (ItemStack tool, ItemStack[] input)
+ {
+ NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool");
+
+ List list = Arrays.asList(((ToolCore)tool.getItem()).getTraits());
+ if (list.contains("weapon"))
+ {
+ return tags.getInteger("Modifiers") > 0;
+ }
+
+ 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);
+
+ updateModTag(tool, keyPair);
+
+ }
+ else
+ {
+ int modifiers = tags.getInteger("Modifiers");
+ modifiers -= 1;
+ tags.setInteger("Modifiers", modifiers);
+ String modName = "\u00A76" + guiType;
+ int tooltipIndex = addToolTip(tool, tooltipName, modName);
+ }
+ }
+
+ void updateModTag (ItemStack tool, int[] keys)
+ {
+ NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool");
+ String tip = "ModifierTip" + keys[2];
+ String modName = "\u00A76" + guiType;
+ tags.setString(tip, modName);
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/core/tools/modifiers/Modifiers.java b/src/main/java/lance5057/tDefense/core/tools/modifiers/Modifiers.java
index de0b82f..8f1187e 100644
--- a/src/main/java/lance5057/tDefense/core/tools/modifiers/Modifiers.java
+++ b/src/main/java/lance5057/tDefense/core/tools/modifiers/Modifiers.java
@@ -1,8 +1,8 @@
package lance5057.tDefense.core.tools.modifiers;
-import cpw.mods.fml.common.registry.GameRegistry;
import lance5057.tDefense.Reference;
import lance5057.tDefense.TinkersDefense;
+import lance5057.tDefense.armor.modifiers.ArmorMods;
import lance5057.tDefense.core.tools.modifiers.ActiveToolMods.TDefenseActiveToolMod;
import lance5057.tDefense.core.tools.modifiers.shields.modifierCrestofBlades;
import lance5057.tDefense.core.tools.modifiers.shields.modifierCrestofFeathers;
@@ -17,13 +17,17 @@ import tconstruct.library.TConstructRegistry;
import tconstruct.library.client.TConstructClientRegistry;
import tconstruct.library.crafting.ModifyBuilder;
import tconstruct.library.tools.ToolCore;
+import cpw.mods.fml.common.registry.GameRegistry;
public class Modifiers
{
public static Item item_relic;
+ public static ArmorMods AMod;
public void init()
{
+ AMod = new ArmorMods();
+
item_relic = new Item().setCreativeTab(TinkersDefense.tabName).setMaxStackSize(1)
.setUnlocalizedName("AncientRelic")
.setTextureName(Reference.MOD_ID + ":AncientRelic");
diff --git a/src/main/java/lance5057/tDefense/finishingAnvil/blocks/finishingAnvil/Gui_FinishingAnvil.java b/src/main/java/lance5057/tDefense/finishingAnvil/blocks/finishingAnvil/Gui_FinishingAnvil.java
index 30b841f..e36aab8 100644
--- a/src/main/java/lance5057/tDefense/finishingAnvil/blocks/finishingAnvil/Gui_FinishingAnvil.java
+++ b/src/main/java/lance5057/tDefense/finishingAnvil/blocks/finishingAnvil/Gui_FinishingAnvil.java
@@ -63,16 +63,16 @@ public class Gui_FinishingAnvil extends GuiContainer
public void initGui()
{
super.initGui();
- this.buttonList.add(new GuiButton(1 ,this.guiLeft+25, this.guiTop+10, 10, 10,"▲"));
- this.buttonList.add(new GuiButton(2 ,this.guiLeft+25, this.guiTop+59, 10, 10,"▼"));
- this.buttonList.add(new GuiButton(3 ,this.guiLeft+47, this.guiTop+49, 18, 18,"✓"));
+ this.buttonList.add(new GuiButton(1 ,this.guiLeft+25, this.guiTop+10, 10, 10,""));
+ this.buttonList.add(new GuiButton(2 ,this.guiLeft+25, this.guiTop+59, 10, 10,""));
+ this.buttonList.add(new GuiButton(3 ,this.guiLeft+47, this.guiTop+49, 18, 18,""));
this.buttonList.add(new GuiButton(4 ,this.guiLeft+5, this.guiTop+10, 20, 20,""));
this.buttonList.add(new GuiButton(5 ,this.guiLeft+5, this.guiTop+30, 20, 20,""));
this.buttonList.add(new GuiButton(6 ,this.guiLeft+5, this.guiTop+50, 20, 20,""));
- this.buttonList.add(new GuiButton(7 ,this.guiLeft+120, this.guiTop+10, 10, 10,"▲"));
- this.buttonList.add(new GuiButton(8 ,this.guiLeft+120, this.guiTop+59, 10, 10,"▼"));
+ this.buttonList.add(new GuiButton(7 ,this.guiLeft+120, this.guiTop+10, 10, 10,""));
+ this.buttonList.add(new GuiButton(8 ,this.guiLeft+120, this.guiTop+59, 10, 10,""));
this.buttonList.add(new GuiButton(9 ,this.guiLeft+130, this.guiTop+10, 20, 20,""));
this.buttonList.add(new GuiButton(10 ,this.guiLeft+130, this.guiTop+30, 20, 20,""));
@@ -87,7 +87,7 @@ public class Gui_FinishingAnvil extends GuiContainer
switch(button.id)
{
case 1: if(this.leftButtonPosX > 0) this.leftButtonPosX--; break;
- case 2: if(this.leftButtonPosX+2 < ((ToolCore)bigCopy.getItem()).getPartAmount() - 1) this.leftButtonPosX++; break;
+ case 2: if(this.leftButtonPosX+2 < ((ToolCore)bigCopy.getItem()).getPartAmount()) this.leftButtonPosX++; break;
case 3:
TinkersDefense.INSTANCE.sendToServer(new Message_FinishingAnvil(inventory.xCoord, inventory.yCoord, inventory.zCoord, this.bigCopy));
diff --git a/src/main/java/lance5057/tDefense/core/Injector.java b/src/main/java/lance5057/tDefense/finishingAnvil/utilities/Injector.java
index 8510fd4..61a4393 100644
--- a/src/main/java/lance5057/tDefense/core/Injector.java
+++ b/src/main/java/lance5057/tDefense/finishingAnvil/utilities/Injector.java
@@ -1,4 +1,4 @@
-package lance5057.tDefense.core;
+package lance5057.tDefense.finishingAnvil.utilities;
import java.util.ArrayList;
import java.util.List;
@@ -12,30 +12,62 @@ import net.minecraft.util.ResourceLocation;
import tconstruct.library.crafting.PatternBuilder;
import tconstruct.library.crafting.PatternBuilder.MaterialSet;
import tconstruct.library.tools.ToolCore;
-import tconstruct.tools.TinkerTools;
public class Injector extends ToolCore
{
ToolCore tool;
- public Injector(int baseDamage, ToolCore tool) {
- super(baseDamage);
- this.tool = tool;
- }
-
- List<String> heads = new ArrayList<String>();
+ InjectorLocations injectLoc;
+
+ List<String> heads= new ArrayList<String>();
List<String> accessorys= new ArrayList<String>();
List<String> handles = new ArrayList<String>();
List<String> extras = new ArrayList<String>();
+ public Injector(int baseDamage, ToolCore tool, InjectorLocations injLoc)
+ {
+ super(0);
+ this.tool = tool;
+
+ injectLoc = injLoc;
+
+ List<String> temp = injectLoc.getList(tool.getUnlocalizedName().substring(tool.getUnlocalizedName().lastIndexOf('.')+1, tool.getUnlocalizedName().length()));
+
+ if(!temp.isEmpty())
+ {
+ for(int i = 0; i<temp.size(); i++)
+ {
+ if(temp.get(i).contains("head"))
+ {
+ heads.add(temp.get(i));
+ }
+ if(temp.get(i).contains("accessory"))
+ {
+ accessorys.add(temp.get(i));
+ }
+ if(temp.get(i).contains("handle"))
+ {
+ handles.add(temp.get(i));
+ }
+ if(temp.get(i).contains("extra"))
+ {
+ extras.add(temp.get(i));
+ }
+ }
+ }
+ }
+
protected void loadHeads(IIconRegister iconRegister)
- {
- IIcon origHead = TinkerTools.broadsword.headIcons.get(-1);
- IIcon origAccessory = TinkerTools.broadsword.accessoryIcons.get(-1);
- IIcon origHandle = TinkerTools.broadsword.handleIcons.get(-1);
+ {
+ IIcon origHead = tool.headIcons.get(-1);
+ IIcon origAccessory = tool.accessoryIcons.get(-1);
+ IIcon origHandle = tool.handleIcons.get(-1);
+ IIcon origExtra = tool.handleIcons.get(-1);
//File[] icons = new File("tinkersdefense:items/" + tool.getDefaultFolder()).listFiles();
+
+
ResourceLocation icons = new ResourceLocation("tinkersdefense", tool.getDefaultFolder());
String test = icons.toString();
for(int i = 0; i<heads.size(); i++)
@@ -44,12 +76,12 @@ public class Injector extends ToolCore
for(Map.Entry<String, MaterialSet> entry : pb.materialSets.entrySet())
{
String icon = "tinkersdefense:";
- icon += TinkerTools.broadsword.getDefaultFolder() + "/" + entry.getKey().toLowerCase() + "/" + heads.get(i);
+ icon += tool.getDefaultFolder() + "/" + entry.getKey().toLowerCase() + "/" + heads.get(i);
//toolIcons[i] = icon;
headStrings.put(entry.getValue().materialID+(TinkersDefense.config.MaterialIndex*(i+1)), icon);
}
- addIcons(headStrings, headIcons, iconRegister, heads.get(i), false);
+ addIcons(tool.headStrings, headIcons, iconRegister, heads.get(i), false);
for(int j = (i+1)*TinkersDefense.config.MaterialIndex; j<TinkersDefense.config.MaterialIndex + ((i+1)*TinkersDefense.config.MaterialIndex); j++)
{
@@ -59,8 +91,8 @@ public class Injector extends ToolCore
}
}
- TinkerTools.broadsword.headStrings.putAll(headStrings);
- TinkerTools.broadsword.headIcons.putAll(headIcons);
+ tool.headStrings.putAll(headStrings);
+ tool.headIcons.putAll(headIcons);
}
for(int i = 0; i<accessorys.size(); i++)
@@ -69,7 +101,7 @@ public class Injector extends ToolCore
for(Map.Entry<String, MaterialSet> entry : pb.materialSets.entrySet())
{
String icon = "tinkersdefense:";
- icon += TinkerTools.broadsword.getDefaultFolder() + "/" + entry.getKey().toLowerCase() + "/" + accessorys.get(i);
+ icon += tool.getDefaultFolder() + "/" + entry.getKey().toLowerCase() + "/" + accessorys.get(i);
//toolIcons[i] = icon;
accessoryStrings.put(entry.getValue().materialID+(TinkersDefense.config.MaterialIndex*(i+1)), icon);
}
@@ -84,8 +116,8 @@ public class Injector extends ToolCore
}
}
- TinkerTools.broadsword.accessoryStrings.putAll(accessoryStrings);
- TinkerTools.broadsword.accessoryIcons.putAll(accessoryIcons);
+ tool.accessoryStrings.putAll(accessoryStrings);
+ tool.accessoryIcons.putAll(accessoryIcons);
}
for(int i = 0; i<handles.size(); i++)
@@ -94,7 +126,7 @@ public class Injector extends ToolCore
for(Map.Entry<String, MaterialSet> entry : pb.materialSets.entrySet())
{
String icon = "tinkersdefense:";
- icon += TinkerTools.broadsword.getDefaultFolder() + "/" + entry.getKey().toLowerCase() + "/" + handles.get(i);
+ icon += tool.getDefaultFolder() + "/" + entry.getKey().toLowerCase() + "/" + handles.get(i);
//toolIcons[i] = icon;
handleStrings.put(entry.getValue().materialID+(TinkersDefense.config.MaterialIndex*(i+1)), icon);
}
@@ -109,13 +141,13 @@ public class Injector extends ToolCore
}
}
- TinkerTools.broadsword.handleStrings.putAll(handleStrings);
- TinkerTools.broadsword.handleIcons.putAll(handleIcons);
+ tool.handleStrings.putAll(handleStrings);
+ tool.handleIcons.putAll(handleIcons);
}
- TinkerTools.broadsword.headIcons.put(-1, origHead);
- TinkerTools.broadsword.accessoryIcons.put(-1, origAccessory);
- TinkerTools.broadsword.handleIcons.put(-1, origHandle);
+ tool.headIcons.put(-1, origHead);
+ tool.accessoryIcons.put(-1, origAccessory);
+ tool.handleIcons.put(-1, origHandle);
}
@Override
@@ -139,7 +171,8 @@ public class Injector extends ToolCore
@Override
public String getDefaultFolder() {
// TODO Auto-generated method stub
- return "broadsword";
+ String s = tool.getDefaultFolder();
+ return s;
}
@Override
diff --git a/src/main/java/lance5057/tDefense/finishingAnvil/utilities/InjectorLocations.java b/src/main/java/lance5057/tDefense/finishingAnvil/utilities/InjectorLocations.java
index 38f2b2d..7d557cf 100644
--- a/src/main/java/lance5057/tDefense/finishingAnvil/utilities/InjectorLocations.java
+++ b/src/main/java/lance5057/tDefense/finishingAnvil/utilities/InjectorLocations.java
@@ -1,5 +1,115 @@
package lance5057.tDefense.finishingAnvil.utilities;
-public class InjectorLocations {
+import java.util.ArrayList;
+import java.util.List;
+public class InjectorLocations
+{
+ List<String> list;
+
+ public InjectorLocations()
+ {
+ list = new ArrayList<String>();
+
+ //BroadSword
+ list.add("broadsword_dull_head");
+ list.add("broadsword_elusive_head");
+ list.add("broadsword_glass_head");
+ list.add("broadsword_mace_head");
+ list.add("broadsword_plumed_head");
+ list.add("broadsword_repulsive_head");
+ list.add("broadsword_spiked_head");
+ list.add("broadsword_tapered_head");
+ list.add("broadsword_widebase_head");
+ list.add("broadsword_falchion_head");
+ list.add("broadsword_big_head");
+ list.add("broadsword_segmented_head");
+ list.add("broadsword_nofuller_head");
+ list.add("broadsword_hourglass_head");
+ list.add("broadsword_flat_head");
+
+ list.add("broadsword_basket_accessory");
+ list.add("broadsword_curved_accessory");
+ list.add("broadsword_elusive_accessory");
+ list.add("broadsword_extended_accessory");
+ list.add("broadsword_legendary_accessory");
+ list.add("broadsword_no_accessory");
+ list.add("broadsword_basket_accessory");
+ list.add("broadsword_repulsive_accessory");
+ list.add("broadsword_square_accessory");
+ list.add("broadsword_straight_accessory");
+ list.add("broadsword_straight_accessory");
+ list.add("broadsword_bulbous_accessory");
+ list.add("broadsword_sun_accessory");
+ list.add("broadsword_lamenting_accessory");
+ list.add("broadsword_pixie_accessory");
+ list.add("broadsword_forked_accessory");
+
+ list.add("broadsword_ornate_handle");
+ list.add("broadsword_thick_handle");
+ list.add("broadsword_short_handle");
+
+ //Arrow
+ list.add("arrow_broad_head");
+ list.add("arrow_elven_head");
+ list.add("arrow_horned_head");
+ list.add("arrow_trident_head");
+ list.add("arrow_winged_head");
+
+ list.add("arrow_bulbous_handle");
+ list.add("arrow_natural_handle");
+
+ list.add("arrow_matted_accessory");
+ list.add("arrow_magic_accessory");
+ list.add("arrow_pixie_accessory");
+ list.add("arrow_small_accessory");
+
+ //Axe
+ list.add("axe_bearded_head");
+ list.add("axe_broad_head");
+ list.add("axe_minecraft_head");
+ list.add("axe_thin_head");
+
+ //Battleaxe
+ list.add("battleaxe_halbard_head");
+ list.add("battleaxe_magic_head");
+ list.add("battleaxe_scythe_head");
+
+ list.add("battleaxe_magic_extra");
+ list.add("battleaxe_scythe_extra");
+ list.add("battleaxe_halbard_extra");
+
+ list.add("battleaxe_magic_accessory");
+ list.add("battleaxe_halbard_accessory");
+ list.add("battleaxe_knob_accessory");
+
+ //Battlesign
+ list.add("battlesign_small_handle");
+ list.add("battlesign_smalllong_handle");
+
+ list.add("battlesign_arrow_head");
+ list.add("battlesign_caution_head");
+ list.add("battlesign_noentry_head");
+ list.add("battlesign_railroad_head");
+ list.add("battlesign_stop_head");
+ list.add("battlesign_X_head");
+ }
+
+ public List getList(String part)
+ {
+ List<String> request = new ArrayList<String>();
+
+ if(!list.isEmpty())
+ {
+ for(int i = 0; i < list.size(); i++)
+ {
+ if(list.get(i).contains(part.toLowerCase()))
+ {
+ request.add(list.get(i).substring(part.length(), list.get(i).length()));
+ }
+ }
+ }
+
+ return request;
+ }
}
diff --git a/src/main/java/lance5057/tDefense/proxy/ClientProxy.java b/src/main/java/lance5057/tDefense/proxy/ClientProxy.java
index 4a46bcf..b9e008a 100644
--- a/src/main/java/lance5057/tDefense/proxy/ClientProxy.java
+++ b/src/main/java/lance5057/tDefense/proxy/ClientProxy.java
@@ -35,8 +35,8 @@ public class ClientProxy extends CommonProxy {
renderer);
MinecraftForgeClient.registerItemRenderer(TinkersDefense.tool_shears,
renderer);
- MinecraftForgeClient.registerItemRenderer(TinkersDefense.tool_zweihander,
- bigrenderer);
+// MinecraftForgeClient.registerItemRenderer(TinkersDefense.tool_zweihander,
+// bigrenderer);
MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerHelm,
renderer);
MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerBreastplate,
@@ -45,6 +45,23 @@ public class ClientProxy extends CommonProxy {
renderer);
MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerSabatons,
renderer);
+ MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerRobe,
+ renderer);
+ MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerShawl,
+ renderer);
+ MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerHood,
+ renderer);
+ MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerShoes,
+ renderer);
+
+ MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerCoif,
+ renderer);
+ MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerHalberd,
+ renderer);
+ MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerChausses,
+ renderer);
+ MinecraftForgeClient.registerItemRenderer(TinkersDefense.armor_TinkerBoots,
+ renderer);
ClientRegistry.bindTileEntitySpecialRenderer(
TileEntity_CrestMount.class, new Renderer_CrestMount());