summaryrefslogtreecommitdiff
path: root/src/main/java/lance5057/tDefense/armor
diff options
context:
space:
mode:
authorLance5057 <Lance5057@gmail.com>2015-10-05 00:02:32 -0500
committerLance5057 <Lance5057@gmail.com>2015-10-15 04:54:18 -0500
commitd67ec64707414df6f78f45ec1710b4ec3fc1ef66 (patch)
tree6a926cb12990aa88cb62e8ec099045f5b54fd8b1 /src/main/java/lance5057/tDefense/armor
parentadefc630eb6876c19660c4f51876cc9bf00d78f0 (diff)
Refactor and Compartmentalize all the codes!
Diffstat (limited to 'src/main/java/lance5057/tDefense/armor')
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/ChainArmor.java77
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/ClothArmor.java76
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/Sheath.java109
-rw-r--r--src/main/java/lance5057/tDefense/armor/items/TinkerArmor.java77
-rw-r--r--src/main/java/lance5057/tDefense/armor/parts/Item_Cloth.java51
-rw-r--r--src/main/java/lance5057/tDefense/armor/parts/Item_Glowthread.java51
-rw-r--r--src/main/java/lance5057/tDefense/armor/parts/Item_Thread.java51
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/ModelChainArmor.java168
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/ModelClothArmor.java285
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/ModelSheath.java105
-rw-r--r--src/main/java/lance5057/tDefense/armor/renderers/ModelTinkerArmor.java109
11 files changed, 1159 insertions, 0 deletions
diff --git a/src/main/java/lance5057/tDefense/armor/items/ChainArmor.java b/src/main/java/lance5057/tDefense/armor/items/ChainArmor.java
new file mode 100644
index 0000000..a2bbd67
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/ChainArmor.java
@@ -0,0 +1,77 @@
+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/ClothArmor.java b/src/main/java/lance5057/tDefense/armor/items/ClothArmor.java
new file mode 100644
index 0000000..7bd6752
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/ClothArmor.java
@@ -0,0 +1,76 @@
+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 ClothArmor extends ItemArmor {
+ public ClothArmor(ArmorMaterial par2EnumArmorMaterial, int par3, int par4) {
+ super(par2EnumArmorMaterial, par3, par4);
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public void registerIcons(IIconRegister par1IconRegister) {
+ String itemName = "tinkersdefense:textures/armor/ClothArmor";
+ 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/Sheath.java b/src/main/java/lance5057/tDefense/armor/items/Sheath.java
new file mode 100644
index 0000000..f96d90a
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/Sheath.java
@@ -0,0 +1,109 @@
+package lance5057.tDefense.armor.items;
+
+import lance5057.tDefense.armor.renderers.ModelSheath;
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.ResourceLocation;
+import tconstruct.library.accessory.IAccessory;
+import tconstruct.library.accessory.IAccessoryModel;
+import tconstruct.library.tools.ToolCore;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+
+public class Sheath extends ToolCore implements IAccessoryModel,IAccessory
+{
+
+ public Sheath()
+ {
+ super(0);
+ }
+
+ @Override
+ public boolean canEquipAccessory(ItemStack item, int slot)
+ {
+ return slot == 3;
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public ModelBiped getArmorModel (EntityLivingBase entityLiving, ItemStack itemStack, int armorSlot)
+ {
+ String color[] = new String[10];
+
+ for(int i = 0; i<10; i++)
+ color[i] = Integer.toHexString(this.getColorFromItemStack(itemStack, i));
+
+ return new ModelSheath(color);
+ }
+
+ @Override
+ public String getArmorTexture(ItemStack stack, Entity entity, int slot,
+ String type) {
+ return "tinkersdefense:textures/armor/Sheath/_sheath_base.png";
+ }
+
+ ResourceLocation texture = new ResourceLocation("tinkersdefense", "textures/armor/Sheath/_sheath_base.png");
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public ResourceLocation getWearbleTexture (Entity entity, ItemStack stack, int slot)
+ {
+ return texture;
+ }
+
+ @Override
+ public Item getAccessoryItem() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public String getDefaultFolder() {
+ // TODO Auto-generated method stub
+ return "Armor/Sheath";
+ }
+
+ @Override
+ public String getEffectSuffix() {
+ return "_sheath_effect";
+ }
+
+ @Override
+ public Item getHeadItem() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @SideOnly(Side.CLIENT)
+ @Override
+ public int getPartAmount() {
+ return 4;
+ }
+
+ @Override
+ public String getIconSuffix(int partType) {
+ switch (partType) {
+ case 0:
+ return "_sheath_base";
+ case 1:
+ return "_shield_base_broken"; //useless
+ case 2:
+ return "_sheath_filigree";
+ case 3:
+ return "_sheath_belt";
+ case 4:
+ return "_sheath_clasp";
+ default:
+ return "";
+ }
+ }
+
+ @Override
+ public String[] getTraits() {
+ return new String[] { "sheath", "cosmetic" };
+ }
+
+}
diff --git a/src/main/java/lance5057/tDefense/armor/items/TinkerArmor.java b/src/main/java/lance5057/tDefense/armor/items/TinkerArmor.java
new file mode 100644
index 0000000..8660d34
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/items/TinkerArmor.java
@@ -0,0 +1,77 @@
+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 TinkerArmor extends ItemArmor {
+ public TinkerArmor(ArmorMaterial par2EnumArmorMaterial, int par3, int par4) {
+ super(par2EnumArmorMaterial, par3, par4);
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public void registerIcons(IIconRegister par1IconRegister) {
+ String itemName = "tinkersdefense:textures/armor/TinkerArmor";
+ this.itemIcon = par1IconRegister.registerIcon(itemName);
+ }
+
+ @Override
+ public String getArmorTexture(ItemStack stack, Entity entity, int slot,
+ String type) {
+ return "tinkersdefense:textures/armor/TinkerArmor.png";
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public ModelBiped getArmorModel(EntityLivingBase entityLiving,
+ ItemStack itemStack, int armorSlot)
+ {
+
+// return ClientProxy.chain;
+ ModelBiped armorModel = ClientProxy.tutChest;
+ 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/parts/Item_Cloth.java b/src/main/java/lance5057/tDefense/armor/parts/Item_Cloth.java
new file mode 100644
index 0000000..26f54b1
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/parts/Item_Cloth.java
@@ -0,0 +1,51 @@
+package lance5057.tDefense.armor.parts;
+
+import java.util.List;
+
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.IIcon;
+
+public class Item_Cloth extends Item
+{
+ public IIcon[] icons = new IIcon[16];
+ public static final String[] colors = new String[] {"black", "red", "green", "brown", "blue", "purple", "cyan", "silver", "grey", "pink", "lime", "yellow", "lightBlue", "magenta", "orange", "white"};
+
+ public Item_Cloth()
+ {
+ super();
+ this.setHasSubtypes(true);
+ this.setUnlocalizedName("Cloth");
+ this.setCreativeTab(TinkersDefense.tabName);
+ }
+
+ @Override
+ public void registerIcons(IIconRegister reg) {
+ for (int i = 0; i < 16; i ++) {
+ this.icons[i] = reg.registerIcon("tinkersdefense:" + colors[i] + "_cloth" );
+ }
+ }
+
+ @Override
+ public IIcon getIconFromDamage(int meta) {
+ if (meta > 15)
+ meta = 0;
+
+ return this.icons[meta];
+ }
+
+ @Override
+ public void getSubItems(Item item, CreativeTabs tab, List list) {
+ for (int i = 0; i < 16; i ++) {
+ list.add(new ItemStack(item, 1, i));
+ }
+ }
+
+ @Override
+ public String getUnlocalizedName(ItemStack stack) {
+ return colors[stack.getItemDamage()] + "_" + this.getUnlocalizedName();
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/parts/Item_Glowthread.java b/src/main/java/lance5057/tDefense/armor/parts/Item_Glowthread.java
new file mode 100644
index 0000000..8539c6f
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/parts/Item_Glowthread.java
@@ -0,0 +1,51 @@
+package lance5057.tDefense.armor.parts;
+
+import java.util.List;
+
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.IIcon;
+
+public class Item_Glowthread extends Item
+{
+ public IIcon[] icons = new IIcon[16];
+ public static final String[] colors = new String[] {"black", "red", "green", "brown", "blue", "purple", "cyan", "silver", "grey", "pink", "lime", "yellow", "lightBlue", "magenta", "orange", "white"};
+
+ public Item_Glowthread()
+ {
+ super();
+ this.setHasSubtypes(true);
+ this.setUnlocalizedName("GlowThread");
+ this.setCreativeTab(TinkersDefense.tabName);
+ }
+
+ @Override
+ public void registerIcons(IIconRegister reg) {
+ for (int i = 0; i < 16; i ++) {
+ this.icons[i] = reg.registerIcon("tinkersdefense:" + colors[i] + "_glowthread" );
+ }
+ }
+
+ @Override
+ public IIcon getIconFromDamage(int meta) {
+ if (meta > 15)
+ meta = 0;
+
+ return this.icons[meta];
+ }
+
+ @Override
+ public void getSubItems(Item item, CreativeTabs tab, List list) {
+ for (int i = 0; i < 16; i ++) {
+ list.add(new ItemStack(item, 1, i));
+ }
+ }
+
+ @Override
+ public String getUnlocalizedName(ItemStack stack) {
+ return colors[stack.getItemDamage()] + "_" + this.getUnlocalizedName();
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/parts/Item_Thread.java b/src/main/java/lance5057/tDefense/armor/parts/Item_Thread.java
new file mode 100644
index 0000000..f1bc61c
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/parts/Item_Thread.java
@@ -0,0 +1,51 @@
+package lance5057.tDefense.armor.parts;
+
+import java.util.List;
+
+import lance5057.tDefense.TinkersDefense;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.IIcon;
+
+public class Item_Thread extends Item
+{
+ public IIcon[] icons = new IIcon[16];
+ public static final String[] colors = new String[] {"black", "red", "green", "brown", "blue", "purple", "cyan", "silver", "grey", "pink", "lime", "yellow", "lightBlue", "magenta", "orange", "white"};
+
+ public Item_Thread()
+ {
+ super();
+ this.setHasSubtypes(true);
+ this.setUnlocalizedName("Thread");
+ this.setCreativeTab(TinkersDefense.tabName);
+ }
+
+ @Override
+ public void registerIcons(IIconRegister reg) {
+ for (int i = 0; i < 16; i ++) {
+ this.icons[i] = reg.registerIcon("tinkersdefense:" + colors[i] + "_thread" );
+ }
+ }
+
+ @Override
+ public IIcon getIconFromDamage(int meta) {
+ if (meta > 15)
+ meta = 0;
+
+ return this.icons[meta];
+ }
+
+ @Override
+ public void getSubItems(Item item, CreativeTabs tab, List list) {
+ for (int i = 0; i < 16; i ++) {
+ list.add(new ItemStack(item, 1, i));
+ }
+ }
+
+ @Override
+ public String getUnlocalizedName(ItemStack stack) {
+ return colors[stack.getItemDamage()] + "_" + this.getUnlocalizedName();
+ }
+}
diff --git a/src/main/java/lance5057/tDefense/armor/renderers/ModelChainArmor.java b/src/main/java/lance5057/tDefense/armor/renderers/ModelChainArmor.java
new file mode 100644
index 0000000..baca0f1
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/ModelChainArmor.java
@@ -0,0 +1,168 @@
+package lance5057.tDefense.armor.renderers;
+
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+
+public class ModelChainArmor extends ModelBiped
+{
+ public ModelRenderer Pauldron1R;
+ public ModelRenderer Pauldron2R;
+ public ModelRenderer Pauldron3R;
+ public ModelRenderer ArmR;
+ public ModelRenderer Belt;
+ public ModelRenderer BeltBuckle;
+ public ModelRenderer Body;
+ public ModelRenderer Coif;
+ public ModelRenderer Head;
+ public ModelRenderer LegR;
+ public ModelRenderer FootR;
+ public ModelRenderer HipGuardR;
+ public ModelRenderer HipGuardBR;
+ public ModelRenderer Pauldron1L;
+ public ModelRenderer Pauldron2L;
+ public ModelRenderer Pauldron3L;
+ public ModelRenderer ArmL;
+ public ModelRenderer LegL;
+ public ModelRenderer FootL;
+ public ModelRenderer HipGuardL;
+ public ModelRenderer HipGuardBL;
+
+ public ModelChainArmor(float f) {
+ super(f, 0, 64,96);
+
+ this.textureWidth = 64;
+ this.textureHeight = 96;
+
+ this.BeltBuckle = new ModelRenderer(this, 0, 32);
+ this.BeltBuckle.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.BeltBuckle.addBox(-1.0F, 10.0F, -2.4F, 2, 2, 1, 0.2F);
+ this.bipedBody.addChild(BeltBuckle);
+
+ this.Pauldron3L = new ModelRenderer(this, 16, 64);
+ this.Pauldron3L.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron3L.addBox(-1.3F, -1.3F, -2.5F, 2, 2, 5, 0.1F);
+ this.setRotateAngle(Pauldron3L, 0.0F, 3.141592653589793F, 0.2617993877991494F);
+ this.bipedLeftArm.addChild(Pauldron3L);
+
+ 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.1F);
+ this.bipedLeftLeg.addChild(LegL);
+
+ 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.1F);
+ this.bipedRightLeg.addChild(LegR);
+
+ this.FootR = new ModelRenderer(this, 0, 75);
+ 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(FootR);
+
+ this.Pauldron1R = new ModelRenderer(this, 30, 64);
+ this.Pauldron1R.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron1R.addBox(-3.5F, -1.6F, -2.5F, 3, 4, 5, 0.0F);
+ this.setRotateAngle(Pauldron1R, 0.0F, 0.0F, 0.2617993877991494F);
+ this.bipedRightArm.addChild(Pauldron1R);
+
+ this.ArmR = new ModelRenderer(this, 40, 48);
+ this.ArmR.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.ArmR.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, 0.1F);
+ this.bipedRightArm.addChild(ArmR);
+
+ this.ArmL = new ModelRenderer(this, 40, 48);
+ this.ArmL.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.ArmL.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, 0.1F);
+ this.setRotateAngle(ArmL, 0.0F, 3.141592653589793F, 0.0F);
+ this.bipedLeftArm.addChild(ArmL);
+
+ this.HipGuardL = new ModelRenderer(this, 24, 32);
+ this.HipGuardL.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.HipGuardL.addBox(-2.1F, 0.0F, 1.5F, 4, 6, 1, -0.1F);
+ this.setRotateAngle(HipGuardL, 0.17453292519943295F, 1.5707963267948966F, 0.0F);
+ this.bipedLeftLeg.addChild(HipGuardL);
+
+ this.Pauldron2R = new ModelRenderer(this, 0, 64);
+ this.Pauldron2R.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron2R.addBox(-2.4F, -2.7F, -2.5F, 3, 3, 5, -0.1F);
+ this.setRotateAngle(Pauldron2R, 0.0F, 0.0F, -0.2617993877991494F);
+ this.bipedRightArm.addChild(Pauldron2R);
+
+ 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.1F);
+ this.bipedBody.addChild(Body);
+
+ this.Pauldron2L = new ModelRenderer(this, 0, 64);
+ this.Pauldron2L.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron2L.addBox(-2.4F, -2.7F, -2.5F, 3, 3, 5, -0.1F);
+ this.setRotateAngle(Pauldron2L, 0.0F, 3.141592653589793F, 0.2617993877991494F);
+ this.bipedLeftArm.addChild(Pauldron2L);
+
+ this.Coif = new ModelRenderer(this, 0, 78);
+ 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(Coif);
+
+ this.HipGuardBR = new ModelRenderer(this, 24, 32);
+ this.HipGuardBR.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.HipGuardBR.addBox(-2.0F, 0.0F, 1.0F, 4, 6, 1, 0.0F);
+ this.setRotateAngle(HipGuardBR, 0.17453292519943295F, 0.0F, 0.0F);
+ this.bipedRightLeg.addChild(HipGuardBR);
+
+ this.Pauldron3R = new ModelRenderer(this, 16, 64);
+ this.Pauldron3R.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron3R.addBox(-1.3F, -1.3F, -2.5F, 2, 2, 5, 0.1F);
+ this.setRotateAngle(Pauldron3R, 0.0F, 0.0F, -0.2617993877991494F);
+ this.bipedRightArm.addChild(Pauldron3R);
+
+ this.Head = new ModelRenderer(this, 0, 32);
+ this.Head.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Head.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, 0.1F);
+ this.bipedHead.addChild(Head);
+
+ this.FootL = new ModelRenderer(this, 0, 75);
+ 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(FootL);
+
+ this.Belt = new ModelRenderer(this, 32, 90);
+ this.Belt.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Belt.addBox(-4.0F, 10.0F, -2.0F, 8, 2, 4, 0.2F);
+ this.bipedBody.addChild(Belt);
+
+ this.HipGuardBL = new ModelRenderer(this, 24, 32);
+ this.HipGuardBL.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.HipGuardBL.addBox(-2.0F, 0.0F, 1.0F, 4, 6, 1, 0.0F);
+ this.setRotateAngle(HipGuardBL, 0.17453292519943295F, 0.0F, 0.0F);
+ this.bipedLeftLeg.addChild(HipGuardBL);
+
+ this.Pauldron1L = new ModelRenderer(this, 30, 64);
+ this.Pauldron1L.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Pauldron1L.addBox(-3.5F, -1.6F, -2.5F, 3, 4, 5, 0.0F);
+ this.setRotateAngle(Pauldron1L, 0.0F, 3.141592653589793F, -0.2617993877991494F);
+ this.bipedLeftArm.addChild(Pauldron1L);
+
+ this.HipGuardR = new ModelRenderer(this, 24, 32);
+ this.HipGuardR.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.HipGuardR.addBox(-2.1F, 0.0F, -2.5F, 4, 6, 1, -0.1F);
+ this.setRotateAngle(HipGuardR, -0.17453292519943295F, 1.5707963267948966F, 0.0F);
+ this.bipedRightLeg.addChild(HipGuardR);
+ }
+
+ @Override
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+ super.render(entity, f, f1, f2, f3, f4, f5);
+ setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ }
+
+ /**
+ * 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/ModelClothArmor.java b/src/main/java/lance5057/tDefense/armor/renderers/ModelClothArmor.java
new file mode 100644
index 0000000..fec1dc4
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/ModelClothArmor.java
@@ -0,0 +1,285 @@
+package lance5057.tDefense.armor.renderers;
+
+import net.minecraft.client.model.ModelBase;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+import org.lwjgl.opengl.GL11;
+
+/**
+ * Hood - Lance5057
+ * Created using Tabula 4.1.1
+ */
+public class ModelClothArmor extends ModelBase {
+ public ModelRenderer TopLeft;
+ public ModelRenderer field_78124_i;
+ public ModelRenderer field_78123_h;
+ public ModelRenderer Top;
+ public ModelRenderer Left;
+ public ModelRenderer Right;
+ public ModelRenderer Collar;
+ public ModelRenderer TrimLeft2;
+ public ModelRenderer TrimLeft3;
+ public ModelRenderer TrimLeft4;
+ public ModelRenderer TrimRight3;
+ public ModelRenderer TrimRight2;
+ public ModelRenderer TrimRight4;
+ public ModelRenderer Flop;
+ public ModelRenderer Top_1;
+ public ModelRenderer ArmLeft;
+ public ModelRenderer ArmRight;
+ public ModelRenderer Chest;
+ public ModelRenderer Belt;
+ public ModelRenderer Button;
+ public ModelRenderer Back;
+ public ModelRenderer ShawlLeft1;
+ public ModelRenderer ShawlLeft2;
+ public ModelRenderer ShawlRight1;
+ public ModelRenderer ShawlRight2;
+ public ModelRenderer LeftFront;
+ public ModelRenderer RightFront;
+ public ModelRenderer LeftFS;
+ public ModelRenderer LeftF;
+ public ModelRenderer LeftBS;
+ public ModelRenderer LeftB;
+ public ModelRenderer LeftB2;
+ public ModelRenderer LeftBA;
+ public ModelRenderer RightFS;
+ public ModelRenderer RightF;
+ public ModelRenderer RightBS;
+ public ModelRenderer RightB;
+ public ModelRenderer RightB2;
+ public ModelRenderer RightBA;
+
+ public ModelClothArmor() {
+ this.textureWidth = 64;
+ this.textureHeight = 64;
+ this.LeftB2 = new ModelRenderer(this, 34, 51);
+ this.LeftB2.setRotationPoint(-3.0F, -0.1F, 3.61F);
+ this.LeftB2.addBox(-1.7F, 0.0F, -2.0F, 1, 11, 2, 0.0F);
+ this.setRotateAngle(LeftB2, 0.0F, 4.71238898038469F, 0.08726646259971647F);
+ this.Button = new ModelRenderer(this, 0, 0);
+ this.Button.setRotationPoint(0.0F, 0.0F, -3.5F);
+ this.Button.addBox(0.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F);
+ this.setRotateAngle(Button, 0.0F, 0.0F, 0.7853981633974483F);
+ this.Right = new ModelRenderer(this, 0, 46);
+ this.Right.setRotationPoint(0.5F, -0.3F, 0.0F);
+ this.Right.addBox(-5.0F, -8.3F, -5.0F, 1, 7, 11, 0.0F);
+ this.setRotateAngle(Right, 0.0F, 3.141592653589793F, -0.08726646259971647F);
+ this.RightBS = new ModelRenderer(this, 34, 51);
+ this.RightBS.setRotationPoint(-3.1F, -0.2F, -3.6F);
+ this.RightBS.addBox(-0.1F, 0.2F, 1.9F, 1, 11, 2, 0.0F);
+ this.setRotateAngle(RightBS, 0.0F, 0.7853981633974483F, 0.0F);
+ this.TrimLeft3 = new ModelRenderer(this, 0, 0);
+ this.TrimLeft3.setRotationPoint(-2.3F, 0.0F, -5.5F);
+ this.TrimLeft3.addBox(0.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F);
+ this.setRotateAngle(TrimLeft3, 0.009773843811168246F, 3.141592653589793F, 0.7853981633974483F);
+ this.LeftBS = new ModelRenderer(this, 33, 51);
+ this.LeftBS.setRotationPoint(1.0F, 0.0F, 3.6F);
+ this.LeftBS.addBox(-1.5F, 0.0F, -2.5F, 1, 11, 2, 0.0F);
+ this.setRotateAngle(LeftBS, 0.0F, -0.7853981633974483F, 0.0F);
+ this.LeftB = new ModelRenderer(this, 34, 50);
+ this.LeftB.setRotationPoint(-2.0F, 0.0F, 3.6F);
+ this.LeftB.addBox(-1.7F, 0.0F, -3.0F, 1, 11, 3, 0.0F);
+ this.setRotateAngle(LeftB, 0.0F, 4.71238898038469F, 0.0F);
+ this.ShawlRight1 = new ModelRenderer(this, 40, 0);
+ this.ShawlRight1.mirror = true;
+ this.ShawlRight1.setRotationPoint(-0.6F, 1.4F, 0.0F);
+ this.ShawlRight1.addBox(0.0F, 0.0F, -3.0F, 6, 5, 6, 0.0F);
+ this.setRotateAngle(ShawlRight1, 0.0F, 0.0F, -0.2792526803190927F);
+ this.field_78124_i = new ModelRenderer(this, 48, 30);
+ this.field_78124_i.mirror = true;
+ this.field_78124_i.setRotationPoint(1.9F, 12.0F, 0.1F);
+ this.field_78124_i.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F);
+ this.Back = new ModelRenderer(this, 46, 40);
+ this.Back.setRotationPoint(0.0F, 1.2F, 2.02F);
+ this.Back.addBox(-4.0F, 0.0F, 0.0F, 8, 5, 1, 0.0F);
+ this.TopLeft = new ModelRenderer(this, 0, 17);
+ this.TopLeft.setRotationPoint(0.0F, -0.3F, 0.0F);
+ this.TopLeft.addBox(-8.5F, 0.0F, -3.0F, 9, 2, 6, 0.1F);
+ this.setRotateAngle(TopLeft, 0.0F, 3.141592653589793F, 0.0F);
+ this.ShawlLeft1 = new ModelRenderer(this, 40, 0);
+ this.ShawlLeft1.setRotationPoint(-0.6F, 1.4F, 0.0F);
+ this.ShawlLeft1.addBox(0.0F, 0.0F, -3.0F, 6, 5, 6, 0.0F);
+ this.setRotateAngle(ShawlLeft1, 0.0F, 0.0F, -0.2792526803190927F);
+ this.RightF = new ModelRenderer(this, 32, 50);
+ this.RightF.setRotationPoint(-4.1F, 0.0F, 1.9F);
+ this.RightF.addBox(0.0F, 0.0F, -3.0F, 1, 11, 3, 0.0F);
+ this.setRotateAngle(RightF, 0.0F, -1.5707963267948966F, 0.0F);
+ this.Chest = new ModelRenderer(this, 0, 0);
+ this.Chest.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Chest.addBox(-4.5F, 0.0F, -2.5F, 9, 12, 5, 0.0F);
+ this.LeftFS = new ModelRenderer(this, 36, 51);
+ this.LeftFS.setRotationPoint(-1.8F, 0.0F, -2.9F);
+ this.LeftFS.addBox(1.0F, 0.0F, 2.0F, 1, 11, 2, 0.0F);
+ this.setRotateAngle(LeftFS, 0.0F, 0.7853981633974483F, 0.0F);
+ this.Collar = new ModelRenderer(this, 0, 33);
+ this.Collar.setRotationPoint(0.0F, 0.0F, 0.0F);
+ this.Collar.addBox(-5.5F, -1.0F, -5.5F, 11, 2, 11, 0.0F);
+ this.setRotateAngle(Collar, 0.0F, 3.141592653589793F, 0.0F);
+ this.Top_1 = new ModelRenderer(this, 0, 17);
+ this.Top_1.setRotationPoint(0.0F, -0.3F, 0.0F);
+ this.Top_1.addBox(-8.5F, 0.0F, -3.0F, 9, 2, 6, 0.01F);
+ this.Left = new ModelRenderer(this, 0, 46);
+ this.Left.mirror = true;
+ this.Left.setRotationPoint(-0.5F, -0.3F, 0.0F);
+ this.Left.addBox(4.0F, -8.3F, -5.0F, 1, 7, 11, 0.0F);
+ this.setRotateAngle(Left, 0.0F, 3.141592653589793F, 0.08726646259971647F);
+ this.RightFront = new ModelRenderer(this, 31, 50);
+ this.RightFront.setRotationPoint(-4.1F, 12.0F, 0.0F);
+ this.RightFront.addBox(-0.7F, 0.0F, -1.5F, 1, 11, 3, 0.0F);
+ this.setRotateAngle(RightFront, 0.0F, 3.141592653589793F, 0.08726646259971647F);
+ this.TrimLeft2 = new ModelRenderer(this, 0, 33);
+ this.TrimLeft2.setRotationPoint(-3.0F, -1.5F, -6.0F);
+ this.TrimLeft2.addBox(0.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F);
+ this.setRotateAngle(TrimLeft2, 0.0F, 0.0F, 0.7853981633974483F);
+ this.TrimLeft4 = new ModelRenderer(this, 0, 46);
+ this.TrimLeft4.setRotationPoint(5.3F, -2.0F, 5.0F);
+ this.TrimLeft4.addBox(0.0F, 0.0F, 0.0F, 1, 2, 11, 0.0F);
+ this.setRotateAngle(TrimLeft4, 0.0F, 3.141592653589793F, 0.5235987755982988F);
+ this.LeftF = new ModelRenderer(this, 32, 50);
+ this.LeftF.setRotationPoint(-4.1F, 0.0F, -1.9F);
+ this.LeftF.addBox(0.0F, 0.0F, 2.1F, 1, 11, 3, 0.0F);
+ this.setRotateAngle(LeftF, 0.0F, 1.5707963267948966F, 0.0F);
+ this.TrimRight2 = new ModelRenderer(this, 0, 33);
+ this.TrimRight2.setRotationPoint(3.0F, -1.5F, -6.0F);
+ this.TrimRight2.addBox(0.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F);
+ this.setRotateAngle(TrimRight2, 0.0F, 0.0F, 0.7853981633974483F);
+ this.ShawlRight2 = new ModelRenderer(this, 42, 11);
+ this.ShawlRight2.mirror = true;
+ this.ShawlRight2.setRotationPoint(-2.5F, -1.8F, -0.1F);
+ this.ShawlRight2.addBox(1.0F, -1.0F, -2.0F, 6, 3, 5, 0.0F);
+ this.setRotateAngle(ShawlRight2, 0.0F, 0.0F, 0.9424777960769379F);
+ this.LeftFront = new ModelRenderer(this, 33, 50);
+ this.LeftFront.setRotationPoint(2.1F, 12.0F, 0.0F);
+ this.LeftFront.addBox(1.4F, 0.0F, -1.5F, 1, 11, 3, 0.0F);
+ this.setRotateAngle(LeftFront, 0.0F, 0.0F, -0.08726646259971647F);
+ this.LeftBA = new ModelRenderer(this, 35, 48);
+ this.LeftBA.setRotationPoint(-2.9F, -0.1F, 3.91F);
+ this.LeftBA.addBox(0.3F, 0.0F, -6.0F, 1, 11, 5, 0.0F);
+ this.setRotateAngle(LeftBA, 0.0F, 0.4363323129985824F, 0.08726646259971647F);
+ this.field_78123_h = new ModelRenderer(this, 48, 30);
+ this.field_78123_h.setRotationPoint(-1.9F, 12.0F, 0.1F);
+ this.field_78123_h.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F);
+ this.TrimRight4 = new ModelRenderer(this, 0, 46);
+ this.TrimRight4.mirror = true;
+ this.TrimRight4.setRotationPoint(-4.5F, -2.5F, 5.0F);
+ this.TrimRight4.addBox(0.0F, 0.0F, 0.0F, 1, 2, 11, 0.0F);
+ this.setRotateAngle(TrimRight4, 0.0F, 3.141592653589793F, -0.5235987755982988F);
+ this.Flop = new ModelRenderer(this, 2, 0);
+ this.Flop.setRotationPoint(0.0F, -7.0F, 8.5F);
+ this.Flop.addBox(-4.0F, 0.0F, 0.0F, 8, 7, 4, 0.0F);
+ this.setRotateAngle(Flop, 0.5235987755982988F, 3.141592653589793F, 0.0F);
+ this.RightB = new ModelRenderer(this, 34, 50);
+ this.RightB.setRotationPoint(-6.1F, -0.2F, -3.6F);
+ this.RightB.addBox(-1.7F, 0.1F, 2.0F, 1, 11, 3, 0.0F);
+ this.setRotateAngle(RightB, 0.0F, 1.5707963267948966F, 0.0F);
+ this.RightB2 = new ModelRenderer(this, 33, 51);
+ this.RightB2.setRotationPoint(-6.2F, 0.0F, -3.61F);
+ this.RightB2.addBox(-1.7F, -0.3F, 1.2F, 1, 11, 2, 0.0F);
+ this.setRotateAngle(RightB2, 0.0F, 1.5707963267948966F, 0.08726646259971647F);
+ this.RightBA = new ModelRenderer(this, 33, 48);
+ this.RightBA.setRotationPoint(-6.9F, -0.3F, -3.61F);
+ this.RightBA.addBox(-3.1F, 0.0F, -4.6F, 1, 11, 5, 0.0F);
+ this.setRotateAngle(RightBA, 0.0F, 2.6179938779914944F, 0.08726646259971647F);
+ this.TrimRight3 = new ModelRenderer(this, 0, 0);
+ this.TrimRight3.setRotationPoint(3.7F, 0.0F, -5.5F);
+ this.TrimRight3.addBox(0.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F);
+ this.setRotateAngle(TrimRight3, 0.0F, 3.141592653589793F, 0.7853981633974483F);
+ this.Belt = new ModelRenderer(this, 0, 37);
+ 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.ShawlLeft2 = new ModelRenderer(this, 42, 11);
+ this.ShawlLeft2.mirror = true;
+ this.ShawlLeft2.setRotationPoint(-2.5F, -1.8F, 0.1F);
+ this.ShawlLeft2.addBox(1.0F, -1.0F, -3.0F, 6, 3, 5, 0.0F);
+ this.setRotateAngle(ShawlLeft2, 0.0F, 0.0F, 0.9424777960769379F);
+ this.RightFS = new ModelRenderer(this, 35, 51);
+ this.RightFS.setRotationPoint(-1.8F, 0.0F, 2.9F);
+ this.RightFS.addBox(-0.5F, 0.0F, -2.5F, 1, 11, 2, 0.0F);
+ this.setRotateAngle(RightFS, 0.0F, -0.7853981633974483F, 0.0F);
+ this.ArmLeft = new ModelRenderer(this, 44, 30);
+ this.ArmLeft.setRotationPoint(3.5F, -0.0F, 0.0F);
+ this.ArmLeft.addBox(0.0F, 0.0F, -2.5F, 5, 11, 5, 0.0F);
+ this.Top = new ModelRenderer(this, 24, 52);
+ this.Top.setRotationPoint(-0.5F, 0.0F, -1.0F);
+ this.Top.addBox(-4.0F, -9.0F, -5.0F, 9, 1, 11, 0.0F);
+ this.ArmRight = new ModelRenderer(this, 44, 30);
+ this.ArmRight.setRotationPoint(-3.5F, 0.0F, 0.0F);
+ this.ArmRight.addBox(0.0F, 0.0F, -2.5F, 5, 11, 5, 0.0F);
+ this.setRotateAngle(ArmRight, 0.0F, 3.141592653589793F, 0.0F);
+ this.LeftFront.addChild(this.LeftB2);
+ this.RightFront.addChild(this.RightBS);
+ this.LeftFront.addChild(this.LeftBS);
+ this.LeftFront.addChild(this.LeftB);
+ this.ArmRight.addChild(this.ShawlRight1);
+ this.ArmLeft.addChild(this.ShawlLeft1);
+ this.RightFront.addChild(this.RightF);
+ this.LeftFront.addChild(this.LeftFS);
+ this.LeftFront.addChild(this.LeftF);
+ this.ShawlRight1.addChild(this.ShawlRight2);
+ this.LeftFront.addChild(this.LeftBA);
+ this.RightFront.addChild(this.RightB);
+ this.RightFront.addChild(this.RightB2);
+ this.RightFront.addChild(this.RightBA);
+ this.ShawlLeft1.addChild(this.ShawlLeft2);
+ this.RightFront.addChild(this.RightFS);
+ }
+
+ @Override
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+ this.Button.render(f5);
+ this.Right.render(f5);
+ GL11.glPushMatrix();
+ GL11.glTranslatef(this.TrimLeft3.offsetX, this.TrimLeft3.offsetY, this.TrimLeft3.offsetZ);
+ GL11.glTranslatef(this.TrimLeft3.rotationPointX * f5, this.TrimLeft3.rotationPointY * f5, this.TrimLeft3.rotationPointZ * f5);
+ GL11.glScaled(0.5D, 0.5D, 1.0D);
+ GL11.glTranslatef(-this.TrimLeft3.offsetX, -this.TrimLeft3.offsetY, -this.TrimLeft3.offsetZ);
+ GL11.glTranslatef(-this.TrimLeft3.rotationPointX * f5, -this.TrimLeft3.rotationPointY * f5, -this.TrimLeft3.rotationPointZ * f5);
+ this.TrimLeft3.render(f5);
+ GL11.glPopMatrix();
+ this.field_78124_i.render(f5);
+ this.Back.render(f5);
+ this.TopLeft.render(f5);
+ this.Chest.render(f5);
+ this.Collar.render(f5);
+ this.Top_1.render(f5);
+ this.Left.render(f5);
+ this.RightFront.render(f5);
+ this.TrimLeft2.render(f5);
+ this.TrimLeft4.render(f5);
+ this.TrimRight2.render(f5);
+ this.LeftFront.render(f5);
+ this.field_78123_h.render(f5);
+ this.TrimRight4.render(f5);
+ GL11.glPushMatrix();
+ GL11.glTranslatef(this.Flop.offsetX, this.Flop.offsetY, this.Flop.offsetZ);
+ GL11.glTranslatef(this.Flop.rotationPointX * f5, this.Flop.rotationPointY * f5, this.Flop.rotationPointZ * f5);
+ GL11.glScaled(1.1D, 1.0D, 1.0D);
+ GL11.glTranslatef(-this.Flop.offsetX, -this.Flop.offsetY, -this.Flop.offsetZ);
+ GL11.glTranslatef(-this.Flop.rotationPointX * f5, -this.Flop.rotationPointY * f5, -this.Flop.rotationPointZ * f5);
+ this.Flop.render(f5);
+ GL11.glPopMatrix();
+ GL11.glPushMatrix();
+ GL11.glTranslatef(this.TrimRight3.offsetX, this.TrimRight3.offsetY, this.TrimRight3.offsetZ);
+ GL11.glTranslatef(this.TrimRight3.rotationPointX * f5, this.TrimRight3.rotationPointY * f5, this.TrimRight3.rotationPointZ * f5);
+ GL11.glScaled(0.5D, 0.5D, 1.0D);
+ GL11.glTranslatef(-this.TrimRight3.offsetX, -this.TrimRight3.offsetY, -this.TrimRight3.offsetZ);
+ GL11.glTranslatef(-this.TrimRight3.rotationPointX * f5, -this.TrimRight3.rotationPointY * f5, -this.TrimRight3.rotationPointZ * f5);
+ this.TrimRight3.render(f5);
+ GL11.glPopMatrix();
+ this.Belt.render(f5);
+ this.ArmLeft.render(f5);
+ this.Top.render(f5);
+ this.ArmRight.render(f5);
+ }
+
+ /**
+ * 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/ModelSheath.java b/src/main/java/lance5057/tDefense/armor/renderers/ModelSheath.java
new file mode 100644
index 0000000..ba2b101
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/ModelSheath.java
@@ -0,0 +1,105 @@
+package lance5057.tDefense.armor.renderers;
+
+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 ModelSheath extends ModelBiped {
+ public ModelRenderer sheath;
+ public ModelRenderer belt;
+
+ String Color[];
+ int rgbColors[];
+
+ public ModelSheath(String color[] /*4*/) {
+ this.textureWidth = 32;
+ this.textureHeight = 32;
+ this.belt = new ModelRenderer(this, 16, 0);
+ this.belt.setRotationPoint(-4.5F, 0.0F, 0.5F);
+ this.belt.addBox(0.0F, 0.0F, -3.0F, 1, 12, 5, 0.0F);
+ this.setRotateAngle(belt, 0.0F, 0.0F, -0.7853981633974483F);
+ this.sheath = new ModelRenderer(this, 0, 0);
+ this.sheath.setRotationPoint(-0.3F, 3.5F, 2.0F);
+ this.sheath.addBox(-3.0F, 0.0F, 0.0F, 6, 24, 2, 0.0F);
+ this.setRotateAngle(sheath, 0.0F, 0.0F, -0.45F);
+
+ Color = color;
+ }
+
+ @Override
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
+
+ GL11.glPushMatrix();
+
+ //Sheath Base
+ GL11.glPushMatrix();
+ rgbColors = TinkersDefense.hexToRGB(Color[1]);
+ GL11.glColor3d((float)rgbColors[0]/255, (float)rgbColors[1]/255, (float)rgbColors[2]/255);
+
+ GL11.glTranslatef(this.sheath.offsetX, this.sheath.offsetY, this.sheath.offsetZ);
+ GL11.glTranslatef(this.sheath.rotationPointX * f5, this.sheath.rotationPointY * f5, this.sheath.rotationPointZ * f5);
+ GL11.glScaled(0.65D, 0.65D, 0.5D);
+ GL11.glTranslatef(-this.sheath.offsetX, -this.sheath.offsetY, -this.sheath.offsetZ);
+ GL11.glTranslatef(-this.sheath.rotationPointX * f5, -this.sheath.rotationPointY * f5, -this.sheath.rotationPointZ * f5);
+
+ this.sheath.render(f5);
+ GL11.glPopMatrix();
+
+ //Belt
+ GL11.glPushMatrix();
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/armor/Sheath/_sheath_belt.png"));
+
+ rgbColors = TinkersDefense.hexToRGB(Color[2]);
+ GL11.glColor3d((float)rgbColors[0]/255, (float)rgbColors[1]/255, (float)rgbColors[2]/255);
+
+ this.belt.render(f5);
+ GL11.glPopMatrix();
+
+ //Buckle
+ GL11.glPushMatrix();
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/armor/Sheath/_sheath_clasp.png"));
+
+ rgbColors = TinkersDefense.hexToRGB(Color[3]);
+ GL11.glColor3d((float)rgbColors[0]/255, (float)rgbColors[1]/255, (float)rgbColors[2]/255);
+
+ this.belt.render(f5);
+ GL11.glPopMatrix();
+
+ //Filigree
+ GL11.glPushMatrix();
+ FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/armor/Sheath/_sheath_filigree.png"));
+
+ rgbColors = TinkersDefense.hexToRGB(Color[0]);
+ GL11.glColor3d((float)rgbColors[0]/255, (float)rgbColors[1]/255, (float)rgbColors[2]/255);
+
+ GL11.glTranslatef(this.sheath.offsetX, this.sheath.offsetY, this.sheath.offsetZ);
+ GL11.glTranslatef(this.sheath.rotationPointX * f5, this.sheath.rotationPointY * f5, this.sheath.rotationPointZ * f5);
+ GL11.glScaled(0.65D, 0.65D, 0.5D);
+ GL11.glTranslatef(-this.sheath.offsetX, -this.sheath.offsetY, -this.sheath.offsetZ);
+ GL11.glTranslatef(-this.sheath.rotationPointX * f5, -this.sheath.rotationPointY * f5, -this.sheath.rotationPointZ * f5);
+
+ this.sheath.render(f5);
+ 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/ModelTinkerArmor.java b/src/main/java/lance5057/tDefense/armor/renderers/ModelTinkerArmor.java
new file mode 100644
index 0000000..d8d17d1
--- /dev/null
+++ b/src/main/java/lance5057/tDefense/armor/renderers/ModelTinkerArmor.java
@@ -0,0 +1,109 @@
+// Date: 1/19/2015 11:08:25 PM
+// Template version 1.1
+// Java generated by Techne
+// Keep in mind that you still need to fill in some blanks
+// - ZeuX
+
+package lance5057.tDefense.armor.renderers;
+
+import net.minecraft.client.model.ModelBiped;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+
+public class ModelTinkerArmor extends ModelBiped
+{
+ //fields
+ ModelRenderer BackPlate;
+ ModelRenderer BreastPlate;
+ ModelRenderer Plackart;
+ ModelRenderer PauldronL;
+ ModelRenderer ArmL;
+ ModelRenderer PauldronR;
+ ModelRenderer ArmR;
+
+ public ModelTinkerArmor(float f)
+ {
+ super(f, 0, 64,64);
+ textureWidth = 64;
+ textureHeight = 64;
+
+ BackPlate = new ModelRenderer(this, 0, 56);
+ BackPlate.addBox(-4F, 0F, 1F, 8, 5, 3);
+ BackPlate.setRotationPoint(0F, 0F, 0F);
+ BackPlate.setTextureSize(64, 32);
+ BackPlate.mirror = true;
+ setRotation(BackPlate, -0.0872665F, 0F, 0F);
+ this.bipedBody.addChild(BackPlate);
+
+ BreastPlate = new ModelRenderer(this, 0, 32);
+ BreastPlate.addBox(-4F, -1F, -5F, 8, 6, 4);
+ BreastPlate.setRotationPoint(0F, 0F, 0F);
+ BreastPlate.setTextureSize(64, 32);
+ BreastPlate.mirror = true;
+ setRotation(BreastPlate, 0.4363323F, 0F, 0F);
+ this.bipedBody.addChild(BreastPlate);
+
+ Plackart = new ModelRenderer(this, 0, 42);
+ Plackart.addBox(-4F, 5F, -3F, 8, 7, 6);
+ Plackart.setRotationPoint(0F, 0F, 0F);
+ Plackart.setTextureSize(64, 32);
+ Plackart.mirror = true;
+ setRotation(Plackart, 0F, 0F, 0F);
+ this.bipedBody.addChild(Plackart);
+
+ PauldronL = new ModelRenderer(this, 28, 32);
+ PauldronL.addBox(1F, -2F, -3.5F, 5, 5, 7);
+ PauldronL.setRotationPoint(0F, 0F, 0F);
+ PauldronL.setTextureSize(64, 32);
+ PauldronL.mirror = true;
+ setRotation(PauldronL, 0F, 0F, -0.7853982F);
+ this.bipedLeftArm.addChild(PauldronL);
+
+ ArmL = new ModelRenderer(this, 28, 44);
+ ArmL.addBox(-1F, -2F, -3F, 5, 10, 6);
+ ArmL.setRotationPoint(0F, 0F, 0F);
+ ArmL.setTextureSize(64, 32);
+ ArmL.mirror = true;
+ setRotation(ArmL, 0F, 0F, 0F);
+ this.bipedLeftArm.addChild(ArmL);
+
+ PauldronR = new ModelRenderer(this, 28, 32);
+ PauldronR.mirror = true;
+ PauldronR.addBox(-6F, -2F, -3.5F, 5, 5, 7);
+ PauldronR.setRotationPoint(0F, 0F, 0F);
+ PauldronR.setTextureSize(64, 32);
+ PauldronR.mirror = true;
+ setRotation(PauldronR, 0F, 0F, 0.7853982F);
+ PauldronR.mirror = false;
+ this.bipedRightArm.addChild(PauldronR);
+
+ ArmR = new ModelRenderer(this, 28, 44);
+ ArmR.mirror = true;
+ ArmR.addBox(-4F, -2F, -3F, 5, 10, 6);
+ ArmR.setRotationPoint(0F, 0F, 0F);
+ ArmR.setTextureSize(64, 32);
+ ArmR.mirror = true;
+ setRotation(ArmR, 0F, 0F, 0F);
+ ArmR.mirror = false;
+ this.bipedRightArm.addChild(ArmR);
+ }
+
+ public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5)
+ {
+ super.render(entity, f, f1, f2, f3, f4, f5);
+ setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ }
+
+ private void setRotation(ModelRenderer model, float x, float y, float z)
+ {
+ model.rotateAngleX = x;
+ model.rotateAngleY = y;
+ model.rotateAngleZ = z;
+ }
+
+ public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity)
+ {
+ super.setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ }
+
+}