package WayofTime.bloodmagic.item; import WayofTime.bloodmagic.BloodMagic; import WayofTime.bloodmagic.api.Constants; import WayofTime.bloodmagic.client.IVariantProvider; import WayofTime.bloodmagic.util.helper.TextHelper; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.NonNullList; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import org.apache.commons.lang3.tuple.ImmutablePair; import org.apache.commons.lang3.tuple.Pair; import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class ItemSlate extends Item implements IVariantProvider { public String[] names = { "blank", "reinforced", "imbued", "demonic", "ethereal" }; public ItemSlate() { super(); setCreativeTab(BloodMagic.tabBloodMagic); setUnlocalizedName(Constants.Mod.MODID + ".slate."); setHasSubtypes(true); } @Override @SideOnly(Side.CLIENT) public void getSubItems(Item id, CreativeTabs creativeTab, NonNullList list) { for (int i = 0; i < names.length; i++) list.add(new ItemStack(id, 1, i)); } @Override public String getUnlocalizedName(ItemStack stack) { return super.getUnlocalizedName(stack) + names[stack.getItemDamage()]; } @Override @SideOnly(Side.CLIENT) public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean advanced) { list.addAll(Arrays.asList(TextHelper.cutLongString(TextHelper.localizeEffect("tooltip.BloodMagic.slate.desc")))); } @Override public List> getVariants() { List> ret = new ArrayList>(); ret.add(new ImmutablePair(0, "type=blank")); ret.add(new ImmutablePair(1, "type=reinforced")); ret.add(new ImmutablePair(2, "type=imbued")); ret.add(new ImmutablePair(3, "type=demonic")); ret.add(new ImmutablePair(4, "type=ethereal")); return ret; } }