package openmods.gui.component;
import net.minecraft.client.Minecraft;
import net.minecraft.util.IIcon;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.input.Mouse;
import org.lwjgl.opengl.GL11;
public class GuiComponentSpriteButton extends GuiComponentSprite {
private final IIcon hoverIcon;
public GuiComponentSpriteButton(int x, int y, IIcon icon, IIcon hoverIcon, ResourceLocation texture) {
super(x, y, icon, texture);
this.hoverIcon = hoverIcon;
}
@Override
protected void doRender(Minecraft minecraft, int offsetX, int offsetY, int mouseX, int mouseY) {
if (icon == null) { return; }
if (texture != null) minecraft.renderEngine.bindTexture(texture);
GL11.glColor3f(r, g, b);
boolean mouseOver = isMouseOver(mouseX, mouseY);
boolean pressed = mouseOver && Mouse.isButtonDown(0);
int offset = pressed? 1 : 0;
IIcon useIcon = hoverIcon != null && mouseOver? hoverIcon : icon;
drawTexturedModelRectFromIcon(offsetX + x + offset, offsetY + y + offset, useIcon, useIcon.getIconWidth(), useIcon.getIconHeight());
}
}