package com.austinv11.peripheralsplusplus.turtles; import com.austinv11.peripheralsplusplus.reference.Config; import com.austinv11.peripheralsplusplus.reference.Reference; import com.austinv11.peripheralsplusplus.turtles.peripherals.PeripheralCompass; import com.austinv11.collectiveframework.minecraft.utils.IconManager; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import dan200.computercraft.api.peripheral.IPeripheral; import dan200.computercraft.api.turtle.*; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; public class TurtleCompass implements ITurtleUpgrade, IconManager.IIconNeeded{ private static IIcon icon; @Override public int getUpgradeID() { return Reference.COMPASS_UPGRADE; } @Override public String getUnlocalisedAdjective() { return "peripheralsplusplus.turtleUpgrade.compass"; } @Override public TurtleUpgradeType getType() { return TurtleUpgradeType.Peripheral; } @Override public ItemStack getCraftingItem() { if (Config.enableNavigationTurtle) return new ItemStack(Items.compass); return null; } @Override public IPeripheral createPeripheral(ITurtleAccess turtle, TurtleSide side) { return new PeripheralCompass(turtle); } @Override public TurtleCommandResult useTool(ITurtleAccess turtle, TurtleSide side, TurtleVerb verb, int direction) { return null; } @Override public IIcon getIcon(ITurtleAccess turtle, TurtleSide side) { return icon; } @Override public void update(ITurtleAccess turtle, TurtleSide side) {} @SideOnly(Side.CLIENT) @Override public void registerIcons(IIconRegister register) { icon = register.registerIcon(Reference.MOD_ID+":upgradeCompass"); } }