package com.jared.mysticaltrinkets.items.belts;
import java.util.List;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumRarity;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumChatFormatting;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.living.LivingEvent.LivingJumpEvent;
import baubles.api.BaubleType;
import baubles.api.BaublesApi;
import baubles.api.IBauble;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
public class ItemJumpingBelt extends Item implements IBauble {
public ItemJumpingBelt() {
super();
this.setMaxStackSize(1);
MinecraftForge.EVENT_BUS.register(this);
this.setMaxDamage(1);
}
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List info, boolean par4) {
info.add(EnumChatFormatting.YELLOW + "Tier: 2");
info.add(EnumChatFormatting.DARK_PURPLE + "Gives the wearer a jump boost.");
}
@Override
public BaubleType getBaubleType(ItemStack itemstack) {
return BaubleType.BELT;
}
@Override
public EnumRarity getRarity(ItemStack par1ItemStack) {
return EnumRarity.epic;
}
@Override
public void onWornTick(ItemStack itemstack, EntityLivingBase player) {
}
@SubscribeEvent
public void onPlayerJump(LivingJumpEvent event) {
if (event.entityLiving instanceof EntityPlayer) {
EntityPlayer player = (EntityPlayer) event.entityLiving;
ItemStack belt = BaublesApi.getBaubles(player).getStackInSlot(3);
if (belt != null && belt.getItem() == this) {
player.motionY += 0.3;
player.fallDistance = -1F;
}
}
}
@Override
public void onEquipped(ItemStack itemstack, EntityLivingBase player) {
}
@Override
public void onUnequipped(ItemStack itemstack, EntityLivingBase player) {
}
@Override
public boolean canEquip(ItemStack itemstack, EntityLivingBase player) {
return true;
}
@Override
public boolean canUnequip(ItemStack itemstack, EntityLivingBase player) {
return true;
}
}