001 package net.minecraft.item; 002 003 import cpw.mods.fml.relauncher.Side; 004 import cpw.mods.fml.relauncher.SideOnly; 005 import java.util.List; 006 import net.minecraft.creativetab.CreativeTabs; 007 import net.minecraft.entity.player.EntityPlayer; 008 import net.minecraft.potion.Potion; 009 import net.minecraft.potion.PotionEffect; 010 import net.minecraft.world.World; 011 012 public class ItemAppleGold extends ItemFood 013 { 014 public ItemAppleGold(int par1, int par2, float par3, boolean par4) 015 { 016 super(par1, par2, par3, par4); 017 this.setHasSubtypes(true); 018 } 019 020 @SideOnly(Side.CLIENT) 021 public boolean hasEffect(ItemStack par1ItemStack) 022 { 023 return par1ItemStack.getItemDamage() > 0; 024 } 025 026 @SideOnly(Side.CLIENT) 027 028 /** 029 * Return an item rarity from EnumRarity 030 */ 031 public EnumRarity getRarity(ItemStack par1ItemStack) 032 { 033 return par1ItemStack.getItemDamage() == 0 ? EnumRarity.rare : EnumRarity.epic; 034 } 035 036 protected void func_77849_c(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) 037 { 038 if (par1ItemStack.getItemDamage() > 0) 039 { 040 if (!par2World.isRemote) 041 { 042 par3EntityPlayer.addPotionEffect(new PotionEffect(Potion.regeneration.id, 600, 3)); 043 par3EntityPlayer.addPotionEffect(new PotionEffect(Potion.resistance.id, 6000, 0)); 044 par3EntityPlayer.addPotionEffect(new PotionEffect(Potion.fireResistance.id, 6000, 0)); 045 } 046 } 047 else 048 { 049 super.func_77849_c(par1ItemStack, par2World, par3EntityPlayer); 050 } 051 } 052 053 @SideOnly(Side.CLIENT) 054 055 /** 056 * returns a list of items with the same ID, but different meta (eg: dye returns 16 items) 057 */ 058 public void getSubItems(int par1, CreativeTabs par2CreativeTabs, List par3List) 059 { 060 par3List.add(new ItemStack(par1, 1, 0)); 061 par3List.add(new ItemStack(par1, 1, 1)); 062 } 063 }