diff options
| author | Lance5057 <Lance5057@gmail.com> | 2015-12-22 07:56:28 -0600 |
|---|---|---|
| committer | Lance5057 <Lance5057@gmail.com> | 2015-12-22 07:56:28 -0600 |
| commit | 10819ad8b1f865b47656de2ebec6c14ea552e262 (patch) | |
| tree | 7e6c8be899da18415ef111360c8aee65fb75300a /src/main/java/lance5057/tDefense/armor | |
| parent | 3ec5ba87778c94fd58bc98bb9af85391d12491c4 (diff) | |
Prepping for Xmas Alpha
Diffstat (limited to 'src/main/java/lance5057/tDefense/armor')
17 files changed, 521 insertions, 329 deletions
diff --git a/src/main/java/lance5057/tDefense/armor/ArmorCore.java b/src/main/java/lance5057/tDefense/armor/ArmorCore.java index 3853c3d..1410b8a 100644 --- a/src/main/java/lance5057/tDefense/armor/ArmorCore.java +++ b/src/main/java/lance5057/tDefense/armor/ArmorCore.java @@ -9,10 +9,13 @@ 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.minecraft.util.IChatComponent; 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.ToolCore; @@ -38,13 +41,15 @@ public class ArmorCore extends ToolCore implements ISpecialArmor//, IAccessoryMo public ArmorProperties getProperties(EntityLivingBase player, ItemStack armor, DamageSource source, double damage, int slot) { - return new ArmorProperties(0, 10, 100); //TODO figure this out + ArmorProperties armorp = new ArmorProperties(0, 0.8, 100); //TODO figure this out + ((EntityPlayer)player).addChatComponentMessage(new ChatComponentText(Double.toString(damage))); + return armorp; } @Override public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot) { - return 1; + return 0; } public int getSlot() @@ -52,7 +57,7 @@ public class ArmorCore extends ToolCore implements ISpecialArmor//, IAccessoryMo return slot; } - public ModelBiped getModel(String[] color) + public ModelBiped getModel(String[] color, NBTTagCompound tags) { return armorModel; } diff --git a/src/main/java/lance5057/tDefense/armor/events/ArmorRenderEvent.java b/src/main/java/lance5057/tDefense/armor/events/ArmorRenderEvent.java index 343ddc0..21ed906 100644 --- a/src/main/java/lance5057/tDefense/armor/events/ArmorRenderEvent.java +++ b/src/main/java/lance5057/tDefense/armor/events/ArmorRenderEvent.java @@ -3,7 +3,9 @@ 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; @@ -11,7 +13,7 @@ public class ArmorRenderEvent { @SubscribeEvent - public void renderArmorEvent(RenderPlayerEvent.Specials.Post event) { + public void renderArmorEvent(RenderPlayerEvent.SetArmorModel event) { if (event.entityPlayer != null) { for(int i = 0; i < 4 ; i++) @@ -19,6 +21,7 @@ public class ArmorRenderEvent if(event.entityPlayer.inventory.armorItemInSlot(i) != null) { ItemStack Armor = event.entityPlayer.inventory.armorItemInSlot(i); + NBTTagCompound tags = Armor.getTagCompound(); if(Armor.getItem() instanceof ArmorCore) { @@ -28,24 +31,29 @@ public class ArmorRenderEvent for(int j = 0; j<10; j++) color[j] = Integer.toHexString(AArmor.getColorFromItemStack(Armor, j)); - ModelBiped armorModel = AArmor.getModel(color); + ModelBiped armorModel = AArmor.getModel(color, tags); - float size; - switch(AArmor.getSlot()) - { - case 0: size = 0.085f; break; - case 1: size = .126f; break; - - default: size = 0.1f; break; + if (armorModel != null) { + armorModel.isSneak = event.entityPlayer.isSneaking(); + armorModel.isRiding = event.entityPlayer.isRiding(); + armorModel.isChild = event.entityPlayer.isChild(); + armorModel.heldItemRight = event.entityPlayer.getHeldItem() != null ? 1 + : 0; + + if (event.entityPlayer instanceof EntityPlayer) { + armorModel.aimedBow = ((EntityPlayer) event.entityPlayer) + .getItemInUseDuration() > 2; + } } float yaw = event.entityPlayer.prevRotationYawHead + (event.entityPlayer.rotationYawHead - event.entityPlayer.prevRotationYawHead) * event.partialRenderTick; float yawOffset = event.entityPlayer.prevRenderYawOffset + (event.entityPlayer.renderYawOffset - event.entityPlayer.prevRenderYawOffset) * event.partialRenderTick; float limbs = event.entityPlayer.prevLimbSwingAmount + (event.entityPlayer.limbSwingAmount - event.entityPlayer.prevLimbSwingAmount) * event.partialRenderTick; - - armorModel.render(event.entityPlayer, event.entityPlayer.limbSwing, limbs,event.entityPlayer.ticksExisted , + float limbSwing = event.entityPlayer.limbSwing - event.entityPlayer.limbSwingAmount * (1.0F - event.partialRenderTick); + + armorModel.render(event.entityPlayer, limbSwing, limbs,event.entityPlayer.ticksExisted , yaw - yawOffset - , event.entityPlayer.rotationPitch, size); + , event.entityPlayer.rotationPitch, 0.1f); } } } diff --git a/src/main/java/lance5057/tDefense/armor/items/ClothArmor.java b/src/main/java/lance5057/tDefense/armor/items/ClothArmor.java deleted file mode 100644 index e297028..0000000 --- a/src/main/java/lance5057/tDefense/armor/items/ClothArmor.java +++ /dev/null @@ -1,76 +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 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/ClothArmor.png"; - } - - @Override - @SideOnly(Side.CLIENT) - public ModelBiped getArmorModel(EntityLivingBase entityLiving, - ItemStack itemStack, int armorSlot) { - - // return ClientProxy.chain; - ModelBiped armorModel = ClientProxy.cloth; - 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 new file mode 100644 index 0000000..33f42b2 --- /dev/null +++ b/src/main/java/lance5057/tDefense/armor/items/cloth/TinkersHood.java @@ -0,0 +1,124 @@ +package lance5057.tDefense.armor.items.cloth; + +import lance5057.tDefense.TinkersDefense; +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.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import tconstruct.tools.TinkerTools; + +public class TinkersHood extends ArmorCore +{ + public TinkersHood() { + super(2,0); + this.setUnlocalizedName("tinkershelm"); + } + + @Override + public Item getHeadItem() + { + return TinkerTools.frypanHead; + } + + @Override + public Item getHandleItem() { + return TinkerTools.toughRod; + } + + @Override + public Item getAccessoryItem() + { + return TinkersDefense.partArmorplate; + } + + @Override + public int durabilityTypeAccessory() { + return 2; + } + + @Override + public float getRepairCost() { + return 4.0f; + } + + @Override + public float getDurabilityModifier() { + return 2.5f; + } + + @Override + public float getDamageModifier() { + return 1.4f; + } + + @Override + public int getPartAmount() { + return 3; + } + + @Override + public String getIconSuffix(int partType) + { + switch (partType) { + case 0: + return "_helm_top"; + case 1: + return "_helm_top_broken"; + case 2: + return "_helm_visor"; + case 3: + return "_helm_chain"; + default: + return ""; + } + } + + @Override + public String getEffectSuffix() + { + return "_helm_effect"; + } + + @Override + public String getDefaultFolder() + { + return "armor/helm"; + } + +// @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/TinkersHelm.png"; + } + + @Override + public String[] getTraits() { + return new String[] {"armor","helmet","helm","heavyarmor"}; + } + + @Override + 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; + } + + @Override + public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot) + { + return 2; + } +} 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 0b690c3..3a8be65 100644 --- a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersBreastplate.java +++ b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersBreastplate.java @@ -6,8 +6,10 @@ 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.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.World; import tconstruct.tools.TinkerTools; @@ -116,11 +118,12 @@ public class TinkersBreastplate extends ArmorCore } @Override - public ModelBiped getModel(String[] color) + 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; } } 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 d0fd9f8..4903bde 100644 --- a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersGrieves.java +++ b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersGrieves.java @@ -1,57 +1,126 @@ package lance5057.tDefense.armor.items.heavy; +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.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.Item; import net.minecraft.item.ItemStack; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.world.World; +import tconstruct.tools.TinkerTools; -public class TinkersGrieves extends ItemArmor { - public TinkersGrieves(ArmorMaterial par2EnumArmorMaterial, int par3, int par4) { - super(par2EnumArmorMaterial, par3, par4); +public class TinkersGrieves extends ArmorCore +{ + public TinkersGrieves() { + super(0,2); + this.setUnlocalizedName("tinkergrieves"); + } + + @Override + public Item getHeadItem() + { + return TinkersDefense.partArmorplate; + } + + @Override + public Item getHandleItem() { + return TinkerTools.toughRod; + } + + @Override + public Item getAccessoryItem() + { + return TinkersDefense.partChainmaille; + } + + @Override + public Item getExtraItem() + { + return TinkersDefense.partArmorplate; + } + + @Override + public int durabilityTypeAccessory() { + return 2; } @Override - @SideOnly(Side.CLIENT) - public void registerIcons(IIconRegister par1IconRegister) { - String itemName = "tinkersdefense:textures/armor/TinkersGrieves"; - this.itemIcon = par1IconRegister.registerIcon(itemName); + public float getRepairCost() { + return 4.0f; } @Override + public float getDurabilityModifier() { + return 2.5f; + } + + @Override + public float getDamageModifier() { + return 1.4f; + } + + @Override + public int getPartAmount() { + return 4; + } + + @Override + public String getIconSuffix(int partType) + { + switch (partType) { + case 0: + return "_grieves_plate"; + case 1: + return "_grieves_plate_broken"; + case 2: + return "_grieves_trim"; + case 3: + return "_grieves_chain"; + case 4: + return "_grieves_cod"; + default: + return ""; + } + } + + @Override + public String getEffectSuffix() + { + return "_grieves_effect"; + } + + @Override + public String getDefaultFolder() + { + return "armor/grieves"; + } + +// @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/TinkersGrieves.png"; } + + @Override + public String[] getTraits() { + return new String[] {"armor","pants","grieves","heavyarmor"}; + } @Override - @SideOnly(Side.CLIENT) - public ModelBiped getArmorModel(EntityLivingBase entityLiving, - ItemStack itemStack, int armorSlot) + public ModelBiped getModel(String[] color,NBTTagCompound tags) { - ModelBiped armorModel = new ModelTinkersGrieves(); - 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; - } - } + String[] textures = {this.getIconSuffix(2),this.getIconSuffix(0),this.getIconSuffix(3), this.getIconSuffix(4)}; + + armorModel = new ModelTinkersGrieves(color, this.getDefaultFolder(), textures); return armorModel; } - -}
\ No newline at end of file +} 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 7a49650..a4444d4 100644 --- a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersHelm.java +++ b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersHelm.java @@ -5,15 +5,17 @@ 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.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.World; import tconstruct.tools.TinkerTools; public class TinkersHelm extends ArmorCore { public TinkersHelm() { - super(0,0); + super(2,0); this.setUnlocalizedName("tinkershelm"); } @@ -107,11 +109,17 @@ public class TinkersHelm extends ArmorCore } @Override - public ModelBiped getModel(String[] color) + 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; } + + @Override + public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot) + { + return 2; + } } 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 38078af..2ada754 100644 --- a/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersSabatons.java +++ b/src/main/java/lance5057/tDefense/armor/items/heavy/TinkersSabatons.java @@ -1,57 +1,133 @@ package lance5057.tDefense.armor.items.heavy; +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.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.Item; import net.minecraft.item.ItemStack; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.nbt.NBTTagCompound; +import tconstruct.library.TConstructRegistry; +import tconstruct.library.tools.CustomMaterial; +import tconstruct.tools.TinkerTools; -public class TinkersSabatons extends ItemArmor { - public TinkersSabatons(ArmorMaterial par2EnumArmorMaterial, int par3, int par4) { - super(par2EnumArmorMaterial, par3, par4); +public class TinkersSabatons extends ArmorCore +{ + public TinkersSabatons() { + super(0,3); + this.setUnlocalizedName("tinkersabatons"); + } + + @Override + public Item getHeadItem() + { + return TinkersDefense.partArmorplate; + } + + @Override + public Item getHandleItem() { + return TinkerTools.toughRod; + } + + @Override + public Item getAccessoryItem() + { + return TinkersDefense.partArmorplate; + } + + @Override + public Item getExtraItem() + { + return TinkersDefense.partCloth; + } + + @Override + public int durabilityTypeAccessory() { + return 2; } @Override - @SideOnly(Side.CLIENT) - public void registerIcons(IIconRegister par1IconRegister) { - String itemName = "tinkersdefense:textures/armor/TinkersSabatons"; - this.itemIcon = par1IconRegister.registerIcon(itemName); + public float getRepairCost() { + return 4.0f; } @Override + public float getDurabilityModifier() { + return 2.5f; + } + + @Override + public float getDamageModifier() { + return 1.4f; + } + + @Override + public int getPartAmount() { + return 4; + } + + @Override + public String getIconSuffix(int partType) + { + switch (partType) { + case 0: + return "_sabatons_plates"; + case 1: + return "_sabatons_plate_broken"; + case 2: + return "_sabatons_trim"; + case 3: + return "_sabatons_caps"; + case 4: + return "_sabatons_soles"; + default: + return ""; + } + } + + @Override + public String getEffectSuffix() + { + return "_sabatons_effect"; + } + + @Override + public String getDefaultFolder() + { + return "armor/sabatons"; + } + +// @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/TinkersSabatons.png"; } + + @Override + public String[] getTraits() { + return new String[] {"armor","shoes","sabatons","heavyarmor"}; + } @Override - @SideOnly(Side.CLIENT) - public ModelBiped getArmorModel(EntityLivingBase entityLiving, - ItemStack itemStack, int armorSlot) + public ModelBiped getModel(String[] color, NBTTagCompound tags) { - ModelBiped armorModel = new ModelTinkersSabatons(); - 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; - } - } + 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; } - -}
\ No newline at end of file +} diff --git a/src/main/java/lance5057/tDefense/armor/parts/Cloth.java b/src/main/java/lance5057/tDefense/armor/parts/Cloth.java new file mode 100644 index 0000000..5613157 --- /dev/null +++ b/src/main/java/lance5057/tDefense/armor/parts/Cloth.java @@ -0,0 +1,40 @@ +package lance5057.tDefense.armor.parts; + +import mantle.items.abstracts.CraftingItem; +import net.minecraft.item.ItemStack; +import tconstruct.library.TConstructRegistry; +import tconstruct.library.util.IToolPart; + +public class Cloth extends CraftingItem implements IToolPart +{ + public Cloth() + { + super(toolMaterialNames, buildTextureNames("_cloth"), "parts/", "tinker", TConstructRegistry.materialTab); + this.setHasSubtypes(true); + this.setMaxDamage(0); + } + + private static String[] buildTextureNames (String textureType) + { + String[] names = new String[toolMaterialNames.length]; + for (int i = 0; i < toolMaterialNames.length; i++) + { + if (toolTextureNames[i].equals("")) + names[i] = ""; + else + names[i] = toolTextureNames[i] + textureType; + } + return names; + } + + public static final String[] toolMaterialNames = new String[] { "white", "orange", "magenta", "lightblue", "yellow", "lime", "pink", "gray", "lightgray", "cyan", "purple", "blue", "brown", "green", "red", "black" }; + public static final String[] toolTextureNames = new String[] { "white", "orange", "magenta", "lightblue", "yellow", "lime", "pink", "gray", "lightgray", "cyan", "purple", "blue", "brown", "green", "red", "black" }; + + @Override + public int getMaterialID (ItemStack stack) + { + if (stack.getItemDamage() >= toolMaterialNames.length) + return -1; + return stack.getItemDamage(); + } +}
\ No newline at end of file diff --git a/src/main/java/lance5057/tDefense/armor/parts/ClothMaterial.java b/src/main/java/lance5057/tDefense/armor/parts/ClothMaterial.java new file mode 100644 index 0000000..40bf260 --- /dev/null +++ b/src/main/java/lance5057/tDefense/armor/parts/ClothMaterial.java @@ -0,0 +1,14 @@ +package lance5057.tDefense.armor.parts; + +import net.minecraft.item.ItemStack; +import tconstruct.library.tools.CustomMaterial; + +public class ClothMaterial extends CustomMaterial +{ + + public ClothMaterial(int materialID, int value, ItemStack input, + ItemStack craftingItem, int color) { + super(materialID, value, input, craftingItem, color); + } + +} diff --git a/src/main/java/lance5057/tDefense/armor/parts/Item_Cloth.java b/src/main/java/lance5057/tDefense/armor/parts/Item_Cloth.java deleted file mode 100644 index 26f54b1..0000000 --- a/src/main/java/lance5057/tDefense/armor/parts/Item_Cloth.java +++ /dev/null @@ -1,51 +0,0 @@ -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 deleted file mode 100644 index 8539c6f..0000000 --- a/src/main/java/lance5057/tDefense/armor/parts/Item_Glowthread.java +++ /dev/null @@ -1,51 +0,0 @@ -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 deleted file mode 100644 index f1bc61c..0000000 --- a/src/main/java/lance5057/tDefense/armor/parts/Item_Thread.java +++ /dev/null @@ -1,51 +0,0 @@ -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/heavy/ModelTinkersBreastplate.java b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersBreastplate.java index 4978724..7c99478 100644 --- a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersBreastplate.java +++ b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersBreastplate.java @@ -116,7 +116,9 @@ public class ModelTinkersBreastplate extends ModelBiped FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png")); - GL11.glTranslatef(0f, -1.51f, 0f); + float size =1.5f; + GL11.glScalef(1.0F / size, 1.0F / size, 1.0F / 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); diff --git a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersGrieves.java b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersGrieves.java index 99ee68b..ecc00da 100644 --- a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersGrieves.java +++ b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersGrieves.java @@ -1,8 +1,14 @@ package lance5057.tDefense.armor.renderers.heavy; +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; /** * TinkersGrieves - Either Mojang or a mod author @@ -18,9 +24,18 @@ public class ModelTinkersGrieves extends ModelBiped { public ModelRenderer LeftLeg; public ModelRenderer RightLeg; - public ModelTinkersGrieves() + public String[] colors; + + public String[] textures; + public String defaultFolder; + + public ModelTinkersGrieves(String[] colors, String defaultFolder, String[] textures) { - super(1.0f, 0, 64,64); + super(1f, 0, 64,64); + + this.colors = colors; + this.textures = textures; + this.defaultFolder = defaultFolder; this.textureWidth = 64; this.textureHeight = 64; @@ -69,14 +84,31 @@ public class ModelTinkersGrieves extends ModelBiped { this.Belt = new ModelRenderer(this, 0, 57); this.Belt.setRotationPoint(0.0F, 0.0F, 0.0F); - this.Belt.addBox(-4.5F, 10.0F, -2.5F, 9, 2, 5, 0.0F); + this.Belt.addBox(-4.5F, 10.0F, -2.5F, 9, 2, 5, -0.25F); this.bipedBody.addChild(this.Belt); } @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); + GL11.glPushMatrix(); + for(int i = 0; i<4; 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, -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(); } /** 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 283e75f..c210df7 100644 --- a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersHelm.java +++ b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersHelm.java @@ -27,7 +27,7 @@ public class ModelTinkersHelm extends ModelBiped public ModelTinkersHelm(String[] colors, String defaultFolder, String[] textures) { - super(1f, 0, 64,64); + super(1.5f, 0, 64,64); this.colors = colors; this.textures = textures; @@ -68,8 +68,9 @@ public class ModelTinkersHelm extends ModelBiped FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png")); - GL11.glTranslatef(0f, -1f, 0f); - + float size = 1.75f; + GL11.glScalef(1.5F / size, 1.5F / size, 1.5F / size); + GL11.glTranslatef(0.0F, -12F * 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 572f4cb..0d7fd15 100644 --- a/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersSabatons.java +++ b/src/main/java/lance5057/tDefense/armor/renderers/heavy/ModelTinkersSabatons.java @@ -1,8 +1,17 @@ package lance5057.tDefense.armor.renderers.heavy; +import java.io.File; + +import lance5057.tDefense.TinkersDefense; + +import org.lwjgl.opengl.GL11; + +import tconstruct.library.TConstructRegistry; +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 @@ -23,10 +32,19 @@ public class ModelTinkersSabatons extends ModelBiped public ModelRenderer KneeGuardL; public ModelRenderer KneeGuardCapR; - public ModelTinkersSabatons() + public String[] colors; + + public String[] textures; + public String defaultFolder; + + public ModelTinkersSabatons(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; @@ -105,8 +123,29 @@ public class ModelTinkersSabatons extends ModelBiped @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); + GL11.glPushMatrix(); + + for(int i = 0; i<4; i++) + { + //TConstructRegistry.getCustomMaterial(arg0, arg1) + GL11.glPushMatrix(); + ResourceLocation texture = new ResourceLocation("tinkersdefense:textures/" + defaultFolder + "/" + textures[i] + ".png"); + //Boolean exists = new File(texture.getResourceDomain() + ":" + texture.getResourcePath()).exists(); + FMLClientHandler.instance().getClient().renderEngine.bindTexture(texture); + + + float size =0.75f; + GL11.glScalef(1.0F / size, 1.0F / size, 1.0F / size); + GL11.glTranslatef(0.0F, -12.4F*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(); } /** |
