From 08f88daf103c955b92eb29409cddca7647bfbfdb Mon Sep 17 00:00:00 2001 From: Lance5057 Date: Thu, 4 Jun 2015 08:17:23 -0500 Subject: Added Event handler, crest modifiers, sheath --- .../gmail/Lance5057/items/ModelTinkerArmor.java | 109 ------ .../java/gmail/Lance5057/items/TinkerArmor.java | 74 ---- .../gmail/Lance5057/items/tools/ArmorCore.java | 26 ++ .../java/gmail/Lance5057/items/tools/Shield.java | 403 +++++++++++---------- 4 files changed, 237 insertions(+), 375 deletions(-) delete mode 100644 src/main/java/gmail/Lance5057/items/ModelTinkerArmor.java delete mode 100644 src/main/java/gmail/Lance5057/items/TinkerArmor.java create mode 100644 src/main/java/gmail/Lance5057/items/tools/ArmorCore.java (limited to 'src/main/java/gmail/Lance5057/items') diff --git a/src/main/java/gmail/Lance5057/items/ModelTinkerArmor.java b/src/main/java/gmail/Lance5057/items/ModelTinkerArmor.java deleted file mode 100644 index c205c98..0000000 --- a/src/main/java/gmail/Lance5057/items/ModelTinkerArmor.java +++ /dev/null @@ -1,109 +0,0 @@ -// 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 gmail.Lance5057.items; - -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); - } - -} diff --git a/src/main/java/gmail/Lance5057/items/TinkerArmor.java b/src/main/java/gmail/Lance5057/items/TinkerArmor.java deleted file mode 100644 index b4be050..0000000 --- a/src/main/java/gmail/Lance5057/items/TinkerArmor.java +++ /dev/null @@ -1,74 +0,0 @@ -package gmail.Lance5057.items; - -import gmail.Lance5057.TinkersDefense; -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) { - ModelBiped armorModel = null; - 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/gmail/Lance5057/items/tools/ArmorCore.java b/src/main/java/gmail/Lance5057/items/tools/ArmorCore.java new file mode 100644 index 0000000..d834a53 --- /dev/null +++ b/src/main/java/gmail/Lance5057/items/tools/ArmorCore.java @@ -0,0 +1,26 @@ +package gmail.Lance5057.items.tools; + +import tconstruct.library.tools.ToolCore; +import cpw.mods.fml.relauncher.*; +import mods.battlegear2.api.IEnchantable; +import mods.battlegear2.api.ISheathed; +import mods.battlegear2.api.shield.IArrowCatcher; +import mods.battlegear2.api.shield.IArrowDisplay; +import mods.battlegear2.api.shield.IShield; +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.entity.EntityPlayerSP; +import net.minecraft.entity.Entity; +import net.minecraft.entity.IProjectile; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.*; +import net.minecraft.item.ItemArmor.ArmorMaterial; +import net.minecraft.util.DamageSource; +import net.minecraft.world.World; + +public abstract class ArmorCore extends ItemArmor +{ + public ArmorCore(ArmorMaterial par2EnumArmorMaterial, int par3, int par4) { + super(par2EnumArmorMaterial, par3, par4); + } +} \ No newline at end of file diff --git a/src/main/java/gmail/Lance5057/items/tools/Shield.java b/src/main/java/gmail/Lance5057/items/tools/Shield.java index 479c28c..af33f84 100644 --- a/src/main/java/gmail/Lance5057/items/tools/Shield.java +++ b/src/main/java/gmail/Lance5057/items/tools/Shield.java @@ -17,198 +17,217 @@ import net.minecraft.item.*; import net.minecraft.util.DamageSource; import net.minecraft.world.World; -public class Shield extends ToolCore implements IShield, ISheathed, IArrowCatcher, IArrowDisplay -{ -public Shield(int baseDamage) -{ -super(baseDamage); -} -protected float baseSpeed () -{ -return 1.5f; -} -protected float effectiveSpeed () -{ -return 15f; -} -public float breakSpeedModifier () -{ -return 1.0f; -} -@Override -public float getDigSpeed (ItemStack stack, Block block, int meta) -{ -if (stack.getTagCompound().getCompoundTag("InfiTool").getBoolean("Broken")) -return 0.1f; -for (int i = 0; i < web.length; i++) -{ -if (web[i] == block.getMaterial()) -{ -return effectiveSpeed(); -} -} -return baseSpeed(); -} -/** -* returns the action that specifies what animation to play when the items -* is being used -*/ -@Override -public EnumAction getItemUseAction (ItemStack par1ItemStack) -{ -return EnumAction.block; -} -/** -* How long it takes to use or consume an item -*/ -@Override -public int getMaxItemUseDuration (ItemStack par1ItemStack) -{ -return 72000; -} -/** -* Called whenever this item is equipped and the right mouse button is -* pressed. Args: itemStack, world, entityPlayer -*/ -@Override -public ItemStack onItemRightClick (ItemStack stack, World world, EntityPlayer player) -{ -player.setItemInUse(stack, this.getMaxItemUseDuration(stack)); -return stack; -} -@Override -public boolean onItemUse (ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float clickX, float clickY, float clickZ) -{ -return false; -} -/** -* Returns if the item (tool) can harvest results from the block type. -*/ -@Override -public boolean canHarvestBlock (Block block, ItemStack is) -{ -for (int i = 0; i < web.length; i++) -{ -if (block.getMaterial() == web[i]) -return true; -} -return super.canHarvestBlock(block, is); -} -protected Material[] getEffectiveMaterials () -{ -return web; -} -@Override -@SideOnly(Side.CLIENT) -public void onUpdate (ItemStack stack, World world, Entity entity, int par4, boolean par5) -{ - super.onUpdate(stack, world, entity, par4, par5); - if (entity instanceof EntityPlayerSP) - { - EntityPlayerSP player = (EntityPlayerSP) entity; - ItemStack usingItem = player.getItemInUse(); - if (usingItem != null && usingItem.getItem() == this) - { - player.movementInput.moveForward *= 2.5F; - player.movementInput.moveStrafe *= 2.5F; +public class Shield extends ToolCore implements IShield, ISheathed, + IArrowCatcher, IArrowDisplay { + public Shield(int baseDamage) { + super(baseDamage); + } + + protected float baseSpeed() { + return 1.5f; + } + + protected float effectiveSpeed() { + return 15f; + } + + public float breakSpeedModifier() { + return 1.0f; + } + + @Override + public float getDigSpeed(ItemStack stack, Block block, int meta) { + if (stack.getTagCompound().getCompoundTag("InfiTool") + .getBoolean("Broken")) + return 0.1f; + for (int i = 0; i < web.length; i++) { + if (web[i] == block.getMaterial()) { + return effectiveSpeed(); + } } + return baseSpeed(); + } + + /** + * returns the action that specifies what animation to play when the items + * is being used + */ + @Override + public EnumAction getItemUseAction(ItemStack par1ItemStack) { + return EnumAction.block; + } + + /** + * How long it takes to use or consume an item + */ + @Override + public int getMaxItemUseDuration(ItemStack par1ItemStack) { + return 72000; + } + + /** + * Called whenever this item is equipped and the right mouse button is + * pressed. Args: itemStack, world, entityPlayer + */ + @Override + public ItemStack onItemRightClick(ItemStack stack, World world, + EntityPlayer player) { + player.setItemInUse(stack, this.getMaxItemUseDuration(stack)); + return stack; + } + + @Override + public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, + int x, int y, int z, int side, float clickX, float clickY, + float clickZ) { + return false; + } + + /** + * Returns if the item (tool) can harvest results from the block type. + */ + @Override + public boolean canHarvestBlock(Block block, ItemStack is) { + for (int i = 0; i < web.length; i++) { + if (block.getMaterial() == web[i]) + return true; + } + return super.canHarvestBlock(block, is); + } + + protected Material[] getEffectiveMaterials() { + return web; + } + + @Override + @SideOnly(Side.CLIENT) + public void onUpdate(ItemStack stack, World world, Entity entity, int par4, + boolean par5) { + super.onUpdate(stack, world, entity, par4, par5); + if (entity instanceof EntityPlayerSP) { + EntityPlayerSP player = (EntityPlayerSP) entity; + ItemStack usingItem = player.getItemInUse(); + if (usingItem != null && usingItem.getItem() == this) { + player.movementInput.moveForward *= 2.5F; + player.movementInput.moveStrafe *= 2.5F; + } + } + } + + @Override + public String[] getTraits() { + return new String[] { "shield", "melee" }; + } + + public static Material[] web = new Material[] { Material.web, + Material.cloth, Material.coral, Material.cake }; + public static Material[] none = new Material[0]; + + protected String getHarvestType() { + // TODO Auto-generated method stub + return null; + } + + @Override + public int getArrowCount(ItemStack arg0) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public void setArrowCount(ItemStack arg0, int arg1) { + // TODO Auto-generated method stub + + } + + @Override + public boolean catchArrow(ItemStack arg0, EntityPlayer arg1, + IProjectile arg2) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean sheatheOnBack(ItemStack item) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void blockAnimation(EntityPlayer arg0, float arg1) { + // TODO Auto-generated method stub + + } + + @Override + public boolean canBlock(ItemStack arg0, DamageSource arg1) { + // TODO Auto-generated method stub + return false; + } + + @Override + public int getBashTimer(ItemStack arg0) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public float getBlockAngle(ItemStack arg0) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public float getDamageDecayRate(ItemStack arg0, float arg1) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public float getDamageReduction(ItemStack arg0, DamageSource arg1) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public float getDecayRate(ItemStack arg0) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public float getRecoveryRate(ItemStack arg0) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public Item getAccessoryItem() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getDefaultFolder() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getEffectSuffix() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Item getHeadItem() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getIconSuffix(int arg0) { + // TODO Auto-generated method stub + return null; } -} -@Override -public String[] getTraits () -{ -return new String[] { "shield", "melee" }; -} -public static Material[] web = new Material[] { Material.web, Material.cloth, Material.coral, Material.cake }; -public static Material[] none = new Material[0]; - -protected String getHarvestType() { - // TODO Auto-generated method stub - return null; -} -@Override -public int getArrowCount(ItemStack arg0) { - // TODO Auto-generated method stub - return 0; -} -@Override -public void setArrowCount(ItemStack arg0, int arg1) { - // TODO Auto-generated method stub - -} -@Override -public boolean catchArrow(ItemStack arg0, EntityPlayer arg1, IProjectile arg2) { - // TODO Auto-generated method stub - return false; -} -@Override -public boolean sheatheOnBack(ItemStack item) { - // TODO Auto-generated method stub - return false; -} -@Override -public void blockAnimation(EntityPlayer arg0, float arg1) { - // TODO Auto-generated method stub - -} -@Override -public boolean canBlock(ItemStack arg0, DamageSource arg1) { - // TODO Auto-generated method stub - return false; -} -@Override -public int getBashTimer(ItemStack arg0) { - // TODO Auto-generated method stub - return 0; -} -@Override -public float getBlockAngle(ItemStack arg0) { - // TODO Auto-generated method stub - return 0; -} -@Override -public float getDamageDecayRate(ItemStack arg0, float arg1) { - // TODO Auto-generated method stub - return 0; -} -@Override -public float getDamageReduction(ItemStack arg0, DamageSource arg1) { - // TODO Auto-generated method stub - return 0; -} -@Override -public float getDecayRate(ItemStack arg0) { - // TODO Auto-generated method stub - return 0; -} -@Override -public float getRecoveryRate(ItemStack arg0) { - // TODO Auto-generated method stub - return 0; -} -@Override -public Item getAccessoryItem() { - // TODO Auto-generated method stub - return null; -} -@Override -public String getDefaultFolder() { - // TODO Auto-generated method stub - return null; -} -@Override -public String getEffectSuffix() { - // TODO Auto-generated method stub - return null; -} -@Override -public Item getHeadItem() { - // TODO Auto-generated method stub - return null; -} -@Override -public String getIconSuffix(int arg0) { - // TODO Auto-generated method stub - return null; -} } \ No newline at end of file -- cgit v1.2.3