package buildcraftAdditions.client.gui.widgets; import java.util.List; import net.minecraft.item.EnumRarity; import net.minecraft.util.ResourceLocation; import buildcraftAdditions.client.gui.GuiBase; import buildcraftAdditions.utils.RenderUtils; import buildcraftAdditions.utils.Utils; import buildcraftAdditions.utils.fluids.Tank; /** * Copyright (c) 2014-2015, AEnterprise * http://buildcraftadditions.wordpress.com/ * Buildcraft Additions is distributed under the terms of GNU GPL v3.0 * Please check the contents of the license located in * http://buildcraftadditions.wordpress.com/wiki/licensing-stuff/ */ public class WidgetFluidTank extends WidgetBase { private static final ResourceLocation texture = new ResourceLocation("bcadditions:textures/gui/Pieces/tankStripes.png"); private final Tank tank; public WidgetFluidTank(int id, int x, int y, int width, int height, GuiBase gui, Tank tank) { super(id, x, y, 0, 0, width, height, gui, ""); setEnableClockSound(false); this.tank = tank; } @Override public void render(int mouseX, int mouseY) { if (tank.getFluidAmount() > 0) RenderUtils.drawFluid(tank.getFluid(), (int) ((tank.getFluidAmount() / (float) tank.getCapacity()) * height), x, y, width, height); RenderUtils.drawImage(texture, x, y + height / 10, width, height - height / 5); } @Override public void addTooltip(int mouseX, int mouseY, List<String> tooltips, boolean shift) { if (tank.getFluid() != null && tank.getFluidType() != null) { EnumRarity r = tank.getFluidType().getRarity(tank.getFluid()); tooltips.add((r != null && r.rarityColor != null ? r.rarityColor : EnumRarity.common.rarityColor) + tank.getFluid().getLocalizedName()); } else { tooltips.add(Utils.localize("gui.empty")); } tooltips.add(Utils.localizeFormatted("fluids.info", tank.getFluidAmount(), tank.getCapacity())); } }