That's the problem. That is what I do, but I use the Minecraft class to get the player. How else would I do it?
Here is my code for the item class:
package in.joegold.flyingring;
import net.minecraft.client.Minecraft;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
public class FlyingRingItem extends Item {
private Minecraft mc = Minecraft.getMinecraft();
public FlyingRingItem(int id) {
super(id);
// Constructor Configuration
setMaxStackSize(1);
setCreativeTab(CreativeTabs.tabTools);
setIconIndex(0);
setItemName("flyingRingItem");
}
@Override
public String getTextureFile() {
return CommonProxy.ITEMS_PNG;
}
@Override
public void onUpdate(ItemStack par1ItemStack, World par2World, Entity par3Entity, int par4, boolean par5) {
super.onUpdate(par1ItemStack, par2World, par3Entity, par4, par5);
if (mc.thePlayer.inventory.hasItem(24537)) {
mc.thePlayer.capabilities.allowFlying = true;
}
if (mc.thePlayer.capabilities.isFlying == true) {
this.setIconIndex(1);
} else {
this.setIconIndex(0);
}
}
}