summaryrefslogtreecommitdiff
path: root/src/main/java/gmail/Lance5057/items
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gmail/Lance5057/items')
-rw-r--r--src/main/java/gmail/Lance5057/items/Injector.java61
-rw-r--r--src/main/java/gmail/Lance5057/items/tools/HeaterShield.java124
-rw-r--r--src/main/java/gmail/Lance5057/items/tools/RoundShield.java359
-rw-r--r--src/main/java/gmail/Lance5057/items/tools/Shield.java81
4 files changed, 261 insertions, 364 deletions
diff --git a/src/main/java/gmail/Lance5057/items/Injector.java b/src/main/java/gmail/Lance5057/items/Injector.java
index 9297932..6ab5ff0 100644
--- a/src/main/java/gmail/Lance5057/items/Injector.java
+++ b/src/main/java/gmail/Lance5057/items/Injector.java
@@ -1,12 +1,21 @@
package gmail.Lance5057.items;
+import java.util.Map;
+
+import tconstruct.library.crafting.PatternBuilder;
+import tconstruct.library.crafting.PatternBuilder.MaterialSet;
import tconstruct.library.tools.ToolCore;
import tconstruct.tools.TinkerTools;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.Item;
-public class Injector extends Item
+public class Injector extends ToolCore
{
+ public Injector(int baseDamage) {
+ super(baseDamage);
+ // TODO Auto-generated constructor stub
+ }
+
int headsIndex;
int accessoryIndex;
int handleIndex;
@@ -21,9 +30,57 @@ public class Injector extends Item
protected void Inject(ToolCore tc, IIconRegister iconRegister)
{
tc.accessoryStrings.clear();
- tc.accessoryStrings.put(19, "tinkersdefense:broadsword/_smallguard");
+ tc.accessoryIcons.clear();
+ PatternBuilder pb = PatternBuilder.instance;
+ for(Map.Entry<String, MaterialSet> entry : pb.materialSets.entrySet())
+ {
+ String test = entry.getKey();
+ String icon = "tinkersdefense:";
+ icon += tc.getDefaultFolder() + "/";
+ icon += test + "_smallguard";
+ //toolIcons[i] = icon;
+ tc.accessoryStrings.put(entry.getValue().materialID, icon);
+ }
+
+ //tc.accessoryStrings.put(0, "tinkersdefense:broadsword/_smallguard");
tc.registerIcons(iconRegister);
}
+
+ @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() {
+ // TODO Auto-generated method stub
+ return null;
+ }
}
diff --git a/src/main/java/gmail/Lance5057/items/tools/HeaterShield.java b/src/main/java/gmail/Lance5057/items/tools/HeaterShield.java
index 8f20f48..14d87bb 100644
--- a/src/main/java/gmail/Lance5057/items/tools/HeaterShield.java
+++ b/src/main/java/gmail/Lance5057/items/tools/HeaterShield.java
@@ -1,5 +1,7 @@
package gmail.Lance5057.items.tools;
+import gmail.Lance5057.TinkersDefense;
+
import java.util.List;
import mods.battlegear2.api.ISheathed;
@@ -34,7 +36,7 @@ public class HeaterShield extends Shield {
@Override
public Item getHeadItem() {
- return TinkerTools.largePlate;
+ return TinkersDefense.partArmorplate;
}
@Override
@@ -44,7 +46,7 @@ public class HeaterShield extends Shield {
@Override
public Item getAccessoryItem() {
- return TinkerTools.largePlate;
+ return TinkersDefense.partArmorplate;
}
@Override
@@ -111,22 +113,22 @@ public class HeaterShield extends Shield {
return "heatershield";
}
- /* tool_TinkerShield specific */
- @Override
- public boolean onLeftClickEntity(ItemStack stack, EntityPlayer player,
- Entity entity) {
- if (AbilityHelper.onLeftClickEntity(stack, player, entity, this)) {
- entity.hurtResistantTime += 7;
- /*
- * if (entity instanceof EntityLiving) { EntityLiving living =
- * (EntityLiving) entity; if (living.getHealth() <= 0) {
- *
- * } }
- */
- // if (entity.getHealth() <= 0)
- }
- return true;
- }
+// /* tool_TinkerShield specific */
+// @Override
+// public boolean onLeftClickEntity(ItemStack stack, EntityPlayer player,
+// Entity entity) {
+// if (AbilityHelper.onLeftClickEntity(stack, player, entity, this)) {
+// entity.hurtResistantTime += 7;
+// /*
+// * if (entity instanceof EntityLiving) { EntityLiving living =
+// * (EntityLiving) entity; if (living.getHealth() <= 0) {
+// *
+// * } }
+// */
+// // if (entity.getHealth() <= 0)
+// }
+// return true;
+// }
@Override
public void onUpdate(ItemStack stack, World world, Entity entity, int par4,
@@ -134,91 +136,7 @@ public class HeaterShield extends Shield {
super.onUpdate(stack, world, entity, par4, par5);
}
-
- @Override
- public int getArrowCount(ItemStack stack) {
- if (stack.hasTagCompound() && stack.getTagCompound().hasKey("arrows")) {
- return stack.getTagCompound().getShort("arrows");
- } else
- return 0;
- }
-
- @Override
- public void setArrowCount(ItemStack stack, int count) {
- if (!stack.hasTagCompound()) {
- stack.setTagCompound(new NBTTagCompound());
- }
- // Should never happen, you would need A LOT of arrows for this to
- // happen
- if (count > Short.MAX_VALUE) {
- count = Short.MAX_VALUE;
- }
- stack.getTagCompound().setShort("arrows", (short) count);
- }
-
- @Override
- public boolean catchArrow(ItemStack shield, EntityPlayer player,
- IProjectile arrow) {
- if (arrow instanceof EntityArrow) {
- setArrowCount(shield, getArrowCount(shield) + 1);
- player.setArrowCountInEntity(player.getArrowCountInEntity() - 1);
- ((EntityArrow) arrow).setDead();
- return true;
- }
- return false;
- }
-
- @Override
- public boolean sheatheOnBack(ItemStack arg0) {
- return true;
- }
-
- @Override
- public void blockAnimation(EntityPlayer player, float dmg) {
- player.worldObj.playSoundAtEntity(player, "battlegear2:shield", 1, 1);
- }
-
- @Override
- public boolean canBlock(ItemStack shield, DamageSource source) {
- return !source.isUnblockable();
- }
-
- @Override
- public int getBashTimer(ItemStack arg0) {
- return 10;
- }
-
- @Override
- public float getBlockAngle(ItemStack arg0) {
- return 60;
- }
-
- @Override
- public float getDamageDecayRate(ItemStack shield, float amount) {
- return 0;
- }
-
- @Override
- public float getDamageReduction(ItemStack arg0, DamageSource arg1) {
- return 1f;
- }
-
- @Override
- public float getDecayRate(ItemStack stack) {
- NBTTagCompound tags = stack.getTagCompound();
- float recovery = tags.getCompoundTag("InfiTool").getInteger(
- "MiningSpeed") / 1.5f;
- return 10f / recovery;
- }
-
- @Override
- public float getRecoveryRate(ItemStack stack) {
- NBTTagCompound tags = stack.getTagCompound();
- float recovery = tags.getCompoundTag("InfiTool").getInteger(
- "MiningSpeed") / 1.5f;
- return 10f / recovery;
- }
-
+
@Override
@SideOnly(Side.CLIENT)
public void addInformation(ItemStack par1ItemStack,
diff --git a/src/main/java/gmail/Lance5057/items/tools/RoundShield.java b/src/main/java/gmail/Lance5057/items/tools/RoundShield.java
index 17aec1c..d940077 100644
--- a/src/main/java/gmail/Lance5057/items/tools/RoundShield.java
+++ b/src/main/java/gmail/Lance5057/items/tools/RoundShield.java
@@ -1,244 +1,157 @@
package gmail.Lance5057.items.tools;
+import gmail.Lance5057.TinkersDefense;
+
import java.util.List;
-import java.util.Random;
import mods.battlegear2.api.ISheathed;
import mods.battlegear2.api.shield.IArrowCatcher;
import mods.battlegear2.api.shield.IArrowDisplay;
import mods.battlegear2.api.shield.IShield;
-import mods.battlegear2.api.shield.ShieldType;
-import mods.battlegear2.utils.BattlegearConfig;
-import cpw.mods.fml.relauncher.*;
import net.minecraft.block.material.Material;
-import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.Entity;
import net.minecraft.entity.IProjectile;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.projectile.EntityArrow;
-import net.minecraft.item.*;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.potion.*;
import net.minecraft.util.DamageSource;
import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.util.IIcon;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
-import net.minecraftforge.event.entity.player.PlayerInteractEvent;
-import tconstruct.library.tools.*;
+import tconstruct.library.tools.AbilityHelper;
+import tconstruct.library.tools.HarvestTool;
import tconstruct.tools.TinkerTools;
-public class RoundShield extends Shield
-{
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+
+public class RoundShield extends Shield {
int induceDamage = 0;
-public RoundShield()
-{
-super(0);
-this.setUnlocalizedName("roundshield");
-}
-@Override
-public Item getHeadItem ()
-{
-return TinkerTools.largePlate;
-}
-@Override
-public Item getHandleItem ()
-{
-return TinkerTools.toolRod;
-}
-@Override
-public Item getAccessoryItem ()
-{
-return TinkerTools.frypanHead;
-}
-@Override
-public int durabilityTypeAccessory ()
-{
-return 2;
-}
-@Override
-public float getRepairCost ()
-{
-return 4.0f;
-}
-@Override
-public float getDurabilityModifier ()
-{
-return 2.5f;
-}
-@Override
-public float breakSpeedModifier ()
-{
-return 0.4f;
-}
-@Override
-public float getDamageModifier ()
-{
-return 1.4f;
-}
-@SideOnly(Side.CLIENT)
-@Override
-public int getPartAmount ()
-{
-return 3;
-}
-@Override
-public String getIconSuffix (int partType)
-{
-switch (partType)
-{
-case 0:
-return "_shield_face";
-case 1:
-return "_shield_face_broken";
-case 2:
-return "_shield_edge";
-case 3:
-return "_shield_boss";
-default:
-return "";
-}
-}
-@Override
-public String getEffectSuffix ()
-{
-return "_shield_effect";
-}
-@Override
-public String getDefaultFolder ()
-{
-return "shield";
-}
-/* tool_TinkerShield specific */
-@Override
-public boolean onLeftClickEntity (ItemStack stack, EntityPlayer player, Entity entity)
-{
-if (AbilityHelper.onLeftClickEntity(stack, player, entity, this))
-{
-entity.hurtResistantTime += 7;
-/*
-* if (entity instanceof EntityLiving) { EntityLiving living =
-* (EntityLiving) entity; if (living.getHealth() <= 0) {
-*
-* } }
-*/
-// if (entity.getHealth() <= 0)
-}
-return true;
-}
-@Override
-public void onUpdate (ItemStack stack, World world, Entity entity, int par4, boolean par5)
-{
-super.onUpdate(stack, world, entity, par4, par5);
-
-}
-
-@Override
-public int getArrowCount(ItemStack stack)
-{
- if(stack.hasTagCompound() && stack.getTagCompound().hasKey("arrows"))
- {
- return stack.getTagCompound().getShort("arrows");
- }
- else
- return 0;
-}
-@Override
-public void setArrowCount(ItemStack stack, int count)
-{
- if(!stack.hasTagCompound()){
- stack.setTagCompound(new NBTTagCompound());
- }
- //Should never happen, you would need A LOT of arrows for this to happen
- if(count > Short.MAX_VALUE){
- count = Short.MAX_VALUE;
- }
- stack.getTagCompound().setShort("arrows", (short)count);
-}
-@Override
-public boolean catchArrow(ItemStack shield, EntityPlayer player, IProjectile arrow)
-{
- if(arrow instanceof EntityArrow)
- {
- setArrowCount(shield, getArrowCount(shield)+1);
- player.setArrowCountInEntity(player.getArrowCountInEntity() - 1);
- ((EntityArrow)arrow).setDead();
- return true;
- }
- return false;
-}
-@Override
-public boolean sheatheOnBack(ItemStack arg0) {
- return true;
-}
-@Override
-public void blockAnimation(EntityPlayer player, float dmg)
-{
- player.worldObj.playSoundAtEntity(player, "battlegear2:shield", 1, 1);
-}
-@Override
-public boolean canBlock(ItemStack shield, DamageSource source) {
- return !source.isUnblockable();
-}
-@Override
-public int getBashTimer(ItemStack arg0) {
- // TODO Auto-generated method stub
- return 10;
-}
-@Override
-public float getBlockAngle(ItemStack arg0) {
- // TODO Auto-generated method stub
- return 60;
-}
-@Override
-public float getDamageDecayRate(ItemStack shield, float amount)
-{
- return 2;
-}
-@Override
-public float getDamageReduction(ItemStack arg0, DamageSource arg1) {
- return 1f;
-}
-@Override
-public float getDecayRate(ItemStack stack)
-{
- NBTTagCompound tags = stack.getTagCompound();
- float recovery = tags.getCompoundTag("InfiTool").getInteger("MiningSpeed");
- return 10f / recovery * 2;
-}
-@Override
-public float getRecoveryRate(ItemStack stack)
-{
- NBTTagCompound tags = stack.getTagCompound();
- float recovery = tags.getCompoundTag("InfiTool").getInteger("MiningSpeed");
- return 10f / recovery * 2;
-}
-
-@Override
-@SideOnly(Side.CLIENT)
-public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
-{
- NBTTagCompound tags = par1ItemStack.getTagCompound();
- super.addInformation(par1ItemStack, par2EntityPlayer, par3List, par4);
- par3List.add("");
- par3List.add(EnumChatFormatting.DARK_GREEN+
- ItemStack.field_111284_a.format( 1F / (10f / tags.getCompoundTag("InfiTool").getInteger("MiningSpeed") * 2) / 20F)+
- StatCollector.translateToLocal("attribute.shield.block.time"));
- int arrowCount = getArrowCount(par1ItemStack);
- if(arrowCount > 0)
- {
- par3List.add(String.format("%s%s %s", EnumChatFormatting.GOLD, arrowCount, StatCollector.translateToLocal("attribute.shield.arrow.count")));
- }
-}
-@Override
-protected Material[] getEffectiveMaterials ()
-{
- return materials;
-}
- static Material[] materials = new Material[] { Material.rock, Material.iron, Material.ice, Material.glass, Material.piston, Material.anvil, Material.circuits };
-
-@Override
-protected String getHarvestType() {
- // TODO Auto-generated method stub
- return "pickaxe";
-}
+
+ public RoundShield() {
+ super(0);
+ this.setUnlocalizedName("shield");
+ }
+
+ @Override
+ public Item getHeadItem() {
+ return TinkersDefense.partArmorplate;
+ }
+
+ @Override
+ public Item getHandleItem() {
+ return TinkerTools.toolRod;
+ }
+
+ @Override
+ public Item getAccessoryItem() {
+ return TinkerTools.binding;
+ }
+
+ @Override
+ public int durabilityTypeAccessory() {
+ return 2;
+ }
+
+ @Override
+ public float getRepairCost() {
+ return 4.0f;
+ }
+
+ @Override
+ public float getDurabilityModifier() {
+ return 1.5f;
+ }
+
+ @Override
+ public float breakSpeedModifier() {
+ return 0.4f;
+ }
+
+ @Override
+ public float getDamageModifier() {
+ return 0f;
+ }
+
+ @SideOnly(Side.CLIENT)
+ @Override
+ public int getPartAmount() {
+ return 3;
+ }
+
+ @Override
+ public String getIconSuffix(int partType) {
+ switch (partType) {
+ case 0:
+ return "_shield_face";
+ case 1:
+ return "_shield_face_broken";
+ case 2:
+ return "_shield_edge";
+ case 3:
+ return "_shield_boss";
+ default:
+ return "";
+ }
+ }
+
+ @Override
+ public String getEffectSuffix() {
+ return "_shield_effect";
+ }
+
+ @Override
+ public String getDefaultFolder() {
+ return "shield";
+ }
+
+// /* tool_TinkerShield specific */
+// @Override
+// public boolean onLeftClickEntity(ItemStack stack, EntityPlayer player,
+// Entity entity) {
+// if (AbilityHelper.onLeftClickEntity(stack, player, entity, this)) {
+// entity.hurtResistantTime += 7;
+// /*
+// * if (entity instanceof EntityLiving) { EntityLiving living =
+// * (EntityLiving) entity; if (living.getHealth() <= 0) {
+// *
+// * } }
+// */
+// // if (entity.getHealth() <= 0)
+// }
+// return true;
+// }
+
+ @Override
+ public void onUpdate(ItemStack stack, World world, Entity entity, int par4,
+ boolean par5) {
+ super.onUpdate(stack, world, entity, par4, par5);
+
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public void addInformation(ItemStack par1ItemStack,
+ EntityPlayer par2EntityPlayer, List par3List, boolean par4) {
+ NBTTagCompound tags = par1ItemStack.getTagCompound();
+ super.addInformation(par1ItemStack, par2EntityPlayer, par3List, par4);
+ par3List.add("");
+ par3List.add(EnumChatFormatting.DARK_GREEN
+ + ItemStack.field_111284_a
+ .format(1F / (10f / (tags.getCompoundTag("InfiTool")
+ .getInteger("MiningSpeed") / 1.5f)) / 20F)
+ + StatCollector.translateToLocal("attribute.shield.block.time"));
+ int arrowCount = getArrowCount(par1ItemStack);
+ if (arrowCount > 0) {
+ par3List.add(String.format("%s%s %s", EnumChatFormatting.GOLD,
+ arrowCount, StatCollector
+ .translateToLocal("attribute.shield.arrow.count")));
+ }
+ }
+
+ @Override
+ protected String getHarvestType() {
+ return "shield";
+ }
} \ 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 58dc60b..5c8af46 100644
--- a/src/main/java/gmail/Lance5057/items/tools/Shield.java
+++ b/src/main/java/gmail/Lance5057/items/tools/Shield.java
@@ -13,7 +13,9 @@ 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.entity.projectile.EntityArrow;
import net.minecraft.item.*;
+import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.DamageSource;
import net.minecraft.world.World;
@@ -132,123 +134,130 @@ public class Shield extends ToolCore implements IShield, ISheathed,
public static Material[] none = new Material[0];
protected String getHarvestType() {
- // TODO Auto-generated method stub
return null;
}
@Override
@Optional.Method(modid = "battlegear2")
- public int getArrowCount(ItemStack arg0) {
- // TODO Auto-generated method stub
- return 0;
+ public int getArrowCount(ItemStack stack) {
+ if (stack.hasTagCompound() && stack.getTagCompound().hasKey("arrows")) {
+ return stack.getTagCompound().getShort("arrows");
+ } else
+ return 0;
}
@Override
@Optional.Method(modid = "battlegear2")
- public void setArrowCount(ItemStack arg0, int arg1) {
- // TODO Auto-generated method stub
+ public void setArrowCount(ItemStack stack, int count) {
+ if (!stack.hasTagCompound()) {
+ stack.setTagCompound(new NBTTagCompound());
+ }
+ // Should never happen, you would need A LOT of arrows for this to
+ // happen
+ if (count > Short.MAX_VALUE) {
+ count = Short.MAX_VALUE;
+ }
+ stack.getTagCompound().setShort("arrows", (short) count);
}
@Override
@Optional.Method(modid = "battlegear2")
- public boolean catchArrow(ItemStack arg0, EntityPlayer arg1,
- IProjectile arg2) {
- // TODO Auto-generated method stub
+ public boolean catchArrow(ItemStack shield, EntityPlayer player,
+ IProjectile arrow) {
+ if (arrow instanceof EntityArrow) {
+ setArrowCount(shield, getArrowCount(shield) + 1);
+ player.setArrowCountInEntity(player.getArrowCountInEntity() - 1);
+ ((EntityArrow) arrow).setDead();
+ return true;
+ }
return false;
}
+
@Override
@Optional.Method(modid = "battlegear2")
public boolean sheatheOnBack(ItemStack item) {
- // TODO Auto-generated method stub
- return false;
+ return true;
}
@Override
@Optional.Method(modid = "battlegear2")
- public void blockAnimation(EntityPlayer arg0, float arg1) {
- // TODO Auto-generated method stub
-
+ public void blockAnimation(EntityPlayer player, float dmg) {
+ player.worldObj.playSoundAtEntity(player, "battlegear2:shield", 1, 1);
}
@Override
@Optional.Method(modid = "battlegear2")
- public boolean canBlock(ItemStack arg0, DamageSource arg1) {
- // TODO Auto-generated method stub
- return false;
+ public boolean canBlock(ItemStack shield, DamageSource source) {
+ return !source.isUnblockable();
}
@Override
@Optional.Method(modid = "battlegear2")
public int getBashTimer(ItemStack arg0) {
- // TODO Auto-generated method stub
- return 0;
+ return 10;
}
@Override
@Optional.Method(modid = "battlegear2")
public float getBlockAngle(ItemStack arg0) {
- // TODO Auto-generated method stub
- return 0;
+ return 60;
}
@Override
@Optional.Method(modid = "battlegear2")
- public float getDamageDecayRate(ItemStack arg0, float arg1) {
- // TODO Auto-generated method stub
+ public float getDamageDecayRate(ItemStack shield, float amount) {
return 0;
}
@Override
@Optional.Method(modid = "battlegear2")
public float getDamageReduction(ItemStack arg0, DamageSource arg1) {
- // TODO Auto-generated method stub
- return 0;
+ return 1f;
}
@Override
@Optional.Method(modid = "battlegear2")
- public float getDecayRate(ItemStack arg0) {
- // TODO Auto-generated method stub
- return 0;
+ public float getDecayRate(ItemStack stack) {
+ NBTTagCompound tags = stack.getTagCompound();
+ float recovery = tags.getCompoundTag("InfiTool").getInteger(
+ "MiningSpeed") / 1.5f;
+ return 10f / recovery;
}
@Override
@Optional.Method(modid = "battlegear2")
- public float getRecoveryRate(ItemStack arg0) {
- // TODO Auto-generated method stub
- return 0;
+ public float getRecoveryRate(ItemStack stack) {
+ NBTTagCompound tags = stack.getTagCompound();
+ float recovery = tags.getCompoundTag("InfiTool").getInteger(
+ "MiningSpeed") / 1.5f;
+ return 10f / recovery;
}
@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