Files
TinkersConstruct/src/main/java/tconstruct/items/tools/Cleaver.java
T

189 lines
3.8 KiB
Java
Raw Normal View History

package tconstruct.items.tools;
2013-11-29 23:16:32 -05:00
import tconstruct.common.TRepo;
import tconstruct.library.tools.AbilityHelper;
import tconstruct.library.tools.Weapon;
2013-10-01 19:44:04 -07:00
import tconstruct.util.config.PHConstruct;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.world.World;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class Cleaver extends Weapon
{
public Cleaver(int itemID)
{
super(itemID, 4);
this.setUnlocalizedName("InfiTool.Cleaver");
}
@Override
public Item getHeadItem ()
{
2013-11-29 23:16:32 -05:00
return TRepo.largeSwordBlade;
}
@Override
public Item getHandleItem ()
{
2013-11-29 23:16:32 -05:00
return TRepo.toughRod;
}
@Override
public Item getAccessoryItem ()
{
2013-11-29 23:16:32 -05:00
return TRepo.largePlate;
}
@Override
public Item getExtraItem ()
{
2013-11-29 23:16:32 -05:00
return TRepo.toughRod;
}
@Override
public int durabilityTypeAccessory ()
{
return 2;
}
@Override
public int durabilityTypeExtra ()
{
return 1;
}
@Override
public float getRepairCost ()
{
return 4.0f;
}
@Override
public float getDurabilityModifier ()
{
return 2.5f;
}
@Override
public float getDamageModifier ()
{
return 1.25f;
}
@SideOnly(Side.CLIENT)
@Override
public int getRenderPasses (int metadata)
{
return 10;
}
@Override
public int getPartAmount ()
{
return 4;
}
@Override
public String getIconSuffix (int partType)
{
switch (partType)
{
case 0:
return "_cleaver_head";
case 1:
return "_cleaver_head_broken";
case 2:
return "_cleaver_handle";
case 3:
return "_cleaver_shield";
case 4:
return "_cleaver_guard";
default:
return "";
}
}
@Override
public String getEffectSuffix ()
{
return "_cleaver_effect";
}
@Override
public String getDefaultFolder ()
{
return "cleaver";
}
/* Cleaver 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;
}
public void onUpdate (ItemStack stack, World world, Entity entity, int par4, boolean par5)
{
super.onUpdate(stack, world, entity, par4, par5);
if (entity instanceof EntityPlayer)
{
EntityPlayer player = (EntityPlayer) entity;
ItemStack equipped = player.getCurrentEquippedItem();
if (equipped == stack)
{
player.addPotionEffect(new PotionEffect(Potion.digSlowdown.id, 1, 2));
}
}
}
/*@Override
public boolean onEntitySwing (EntityLiving entity, ItemStack stack)
{
entity.swingProgressInt /= 2;
return false;
}*/
2013-11-10 13:57:35 -08:00
@Override
public boolean willAllowOffhandWeapon ()
{
return false;
}
@Override
public boolean willAllowShield ()
{
return PHConstruct.isCleaverTwoHanded;
}
@Override
public boolean isOffhandHandDualWeapon ()
{
return false;
}
@Override
public boolean sheatheOnBack ()
{
return true;
}
}