package ttftcuts.physis.client.gui;
import java.util.List;
import org.lwjgl.opengl.GL11;
import ttftcuts.physis.Physis;
import ttftcuts.physis.common.container.ContainerPhysis;
import ttftcuts.physis.common.helper.PhysisRenderHelper;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.inventory.Container;
import net.minecraft.util.ResourceLocation;
public abstract class GuiContainerPhysis extends GuiContainer {
public static ResourceLocation inventoryTexture = new ResourceLocation(Physis.MOD_ID, "textures/gui/inventory.png");
public static ResourceLocation slotIcons = new ResourceLocation(Physis.MOD_ID, "textures/gui/sloticons.png");
public GuiContainerPhysis(Container container) {
super(container);
}
protected void drawPlayerInventory(int x, int y) {
GL11.glColor3f(1f, 1f, 1f);
mc.renderEngine.bindTexture(inventoryTexture);
this.drawTexturedModalRect(this.guiLeft + x-8, this.guiTop + y-8, 0, 0, 176, 90);
}
protected void drawPlayerInventory() {
if (this.inventorySlots != null && this.inventorySlots instanceof ContainerPhysis) {
ContainerPhysis container = (ContainerPhysis)this.inventorySlots;
this.drawPlayerInventory(container.inventoryX, container.inventoryY);
} else {
this.drawPlayerInventory(0, 0);
}
}
protected void drawWoodenSlot(int x, int y) {
GL11.glColor3f(1f, 1f, 1f);
mc.renderEngine.bindTexture(inventoryTexture);
this.drawTexturedModalRect(this.guiLeft + x-16, this.guiTop + y-16, 208, 0, 48, 48);
}
protected void drawWoodenColumn(int x, int y, int number) {
GL11.glColor3f(1f, 1f, 1f);
mc.renderEngine.bindTexture(inventoryTexture);
this.drawTexturedModalRect(this.guiLeft + x-16, this.guiTop + y-16, 208, 0, 48, 15);
for (int i=0; i<number; i++) {
this.drawTexturedModalRect(this.guiLeft + x-16, this.guiTop + y - 1 + i*18, 208, 15, 48, 18);
}
this.drawTexturedModalRect(this.guiLeft + x-16, this.guiTop + y-1 + number*18, 208, 33, 48, 15);
}
protected void drawSlotOverlay(int x, int y) {
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_DEPTH_TEST);
GL11.glColorMask(true, true, true, false);
this.drawGradientRect(x, y, x + 16, y + 16, -2130706433, -2130706433);
GL11.glColorMask(true, true, true, true);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_DEPTH_TEST);
}
protected void drawSlotIcon(int x, int y, int iconx, int icony, int colour) {
mc.renderEngine.bindTexture(slotIcons);
PhysisRenderHelper.drawColouredTexturedModalRect(this.guiLeft + x, this.guiTop + y, this.zLevel, 16*iconx, 16*icony, 16, 16, colour);
}
protected void drawSlotIcon(int x, int y, int iconx, int icony) {
this.drawSlotIcon(x, y, iconx, icony, 0xFFFFFF);
}
protected void drawCustomTooltip(int x, int y, List<String> lines) {
this.drawHoveringText(lines, x, y, mc.fontRenderer);
}
protected void drawCustomTooltip(int x, int y, String text, int width) {
this.drawCustomTooltip(x, y, Physis.text.translateAndWrap(text, width));
}
}