44 lines
1.1 KiB
Java
44 lines
1.1 KiB
Java
package mekanism.client.gui;
|
|
|
|
import mekanism.api.energy.IStrictEnergyStorage;
|
|
import mekanism.client.render.MekanismRenderer;
|
|
import mekanism.common.util.MekanismUtils;
|
|
|
|
import net.minecraft.tileentity.TileEntity;
|
|
import net.minecraft.util.Icon;
|
|
import net.minecraft.util.ResourceLocation;
|
|
|
|
public class GuiEnergyGauge extends GuiGauge
|
|
{
|
|
IEnergyInfoHandler infoHandler;
|
|
|
|
public GuiEnergyGauge(IEnergyInfoHandler handler, Type type, GuiMekanism gui, TileEntity tile, ResourceLocation def, int x, int y)
|
|
{
|
|
super(type, gui, tile, def, x, y);
|
|
|
|
infoHandler = handler;
|
|
}
|
|
|
|
@Override
|
|
public int getScaledLevel()
|
|
{
|
|
return (int)(infoHandler.getEnergyStorage().getEnergy()*(height-2) / infoHandler.getEnergyStorage().getMaxEnergy());
|
|
}
|
|
|
|
@Override
|
|
public Icon getIcon()
|
|
{
|
|
return MekanismRenderer.energyIcon;
|
|
}
|
|
|
|
@Override
|
|
public String getTooltipText()
|
|
{
|
|
return infoHandler.getEnergyStorage().getEnergy() > 0 ? MekanismUtils.getEnergyDisplay(infoHandler.getEnergyStorage().getEnergy()) : MekanismUtils.localize("gui.empty");
|
|
}
|
|
|
|
public static interface IEnergyInfoHandler
|
|
{
|
|
public IStrictEnergyStorage getEnergyStorage();
|
|
}
|
|
}
|