package mekanism.common.integration; import java.util.List; import mcp.mobius.waila.api.IWailaConfigHandler; import mcp.mobius.waila.api.IWailaDataAccessor; import mcp.mobius.waila.api.IWailaDataProvider; import mcp.mobius.waila.api.IWailaRegistrar; import mekanism.api.EnumColor; import mekanism.common.tile.TileEntityFactory; import mekanism.common.tile.TileEntityInductionCell; import mekanism.common.tile.TileEntityInductionProvider; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import cpw.mods.fml.common.Optional.Interface; import cpw.mods.fml.common.Optional.Method; @Interface(iface = "mcp.mobius.waila.api.IWailaDataProvider", modid = "Waila") public class WailaDataProvider implements IWailaDataProvider { @Method(modid = "Waila") public static void register(IWailaRegistrar registrar) { WailaDataProvider provider = new WailaDataProvider(); registrar.registerHeadProvider(provider, TileEntityInductionCell.class); registrar.registerHeadProvider(provider, TileEntityInductionProvider.class); registrar.registerHeadProvider(provider, TileEntityFactory.class); } @Override @Method(modid = "Waila") public ItemStack getWailaStack(IWailaDataAccessor accessor, IWailaConfigHandler config) { return null; } @Override @Method(modid = "Waila") public List<String> getWailaHead(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) { TileEntity tile = accessor.getTileEntity(); if(tile instanceof TileEntityInductionCell) { currenttip.set(0, EnumColor.WHITE + ((TileEntityInductionCell)tile).getInventoryName()); } else if(tile instanceof TileEntityInductionProvider) { currenttip.set(0, EnumColor.WHITE + ((TileEntityInductionProvider)tile).getInventoryName()); } else if(tile instanceof TileEntityFactory) { currenttip.set(0, EnumColor.WHITE + ((TileEntityFactory)tile).getInventoryName()); } return currenttip; } @Override @Method(modid = "Waila") public List<String> getWailaBody(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) { return currenttip; } @Override @Method(modid = "Waila") public List<String> getWailaTail(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) { return currenttip; } @Override @Method(modid = "Waila") public NBTTagCompound getNBTData(EntityPlayerMP player, TileEntity te, NBTTagCompound tag, World world, int x, int y, int z) { return tag; } }