package chbachman.armour.items.bauble; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import vazkii.botania.api.mana.IManaItem; import chbachman.armour.items.armour.logic.ManaUpgradeLogic; import cpw.mods.fml.common.Optional; @Optional.Interface(modid = "Botania", iface = "vazkii.botania.api.mana.IManaItem") public class BotaniaBauble extends ItemBauble implements IManaItem { public BotaniaBauble() { this.holder = new ManaUpgradeLogic(this); } public ManaUpgradeLogic getHolder() { return (ManaUpgradeLogic) holder; } // IManaItem @Override @Optional.Method(modid = "Botania") public int getMana(ItemStack stack) { return this.getHolder().getMana(stack); } @Override @Optional.Method(modid = "Botania") public int getMaxMana(ItemStack stack) { return this.getHolder().getMaxMana(stack); } @Override @Optional.Method(modid = "Botania") public void addMana(ItemStack stack, int mana) { this.getHolder().addMana(stack, mana); } @Override @Optional.Method(modid = "Botania") public boolean canReceiveManaFromPool(ItemStack stack, TileEntity pool) { return this.getHolder().canReceiveManaFromPool(stack, pool); } @Override @Optional.Method(modid = "Botania") public boolean canReceiveManaFromItem(ItemStack stack, ItemStack otherStack) { return this.getHolder().canReceiveManaFromItem(stack, otherStack); } @Override @Optional.Method(modid = "Botania") public boolean canExportManaToPool(ItemStack stack, TileEntity pool) { return this.getHolder().canExportManaToPool(stack, pool); } @Override @Optional.Method(modid = "Botania") public boolean canExportManaToItem(ItemStack stack, ItemStack otherStack) { return this.getHolder().canExportManaToItem(stack, otherStack); } @Override @Optional.Method(modid = "Botania") public boolean isNoExport(ItemStack stack) { return this.getHolder().isNoExport(stack); } }