private static IProbeInfo addIcon(IProbeInfo probeInfo, IWidgetIcon icon, int border) { ResourceLocation texture = icon.getMap().getTexture(); int x = icon.getX(); int y = icon.getY(); int width = icon.getWidth(); int height = icon.getHeight(); return probeInfo.icon(texture, x, y, width, height, probeInfo.defaultIconStyle().width(width + border).height(height + border)); }
public MultiIconButton(@Nonnull IGuiScreen gui, int id, int x, int y, @Nonnull IWidgetIcon unpressed, @Nonnull IWidgetIcon pressed, @Nonnull IWidgetIcon hover) { super(gui, id, x, y, null); this.unpressed = unpressed; this.pressed = pressed; this.hover = hover; setSize(unpressed.getWidth(), unpressed.getHeight()); }
/** * Draws this button to the screen. */ @Override public void drawButton(@Nonnull Minecraft mc, int mouseX, int mouseY, float partialTicks) { updateTooltip(mc, mouseX, mouseY); if (isVisible()) { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); hovered = mouseX >= x && mouseY >= y && mouseX < x + width && mouseY < y + height; int hoverState = getHoverState(hovered); mouseDragged(mc, mouseX, mouseY); IWidgetIcon background = getIconForHoverState(hoverState); GL11.glColor3f(1, 1, 1); GL11.glPushAttrib(GL11.GL_ENABLE_BIT); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); background.getMap().render(background, x, y, width, height, 0, true); final @Nullable IWidgetIcon icon2 = icon; if (icon2 != null) { icon2.getMap().render(icon2, x + marginX, y + marginY, width - 2 * marginX, height - 2 * marginY, 0, true); } GL11.glPopAttrib(); } }
RenderUtil.bindTexture(widget.getMap().getTexture()); widget.getMap().render(widget, x, y, true); int size = 12; widget = mode.previous().getWidgetSelected(); RenderUtil.bindTexture(widget.getMap().getTexture()); widget.getMap().render(widget, x - 18 + (16 - size), y + (16 - size), size, size, 0, true); widget = mode.next().getWidgetSelected(); RenderUtil.bindTexture(widget.getMap().getTexture()); widget.getMap().render(widget, x + 18, y + (16 - size), size, size, 0, true); } else { RenderUtil.bindTexture(widget.getMap().getTexture()); widget.getMap().render(widget, x, y, true); RenderUtil.bindTexture(widget.getMap().getTexture()); if (toRender == mode) { widget = toRender.getWidgetSelected(); widget.getMap().render(widget, x - inset, y, true); } else { widget.getMap().render(widget, x, y, true); RenderUtil.bindTexture(widget.getMap().getTexture()); widget.getMap().render(widget, x, y, true); x += 16; if (count == modeCount / 2 - 1) {
double minU = (double) widget.getX() / getSize(); double maxU = (double) (widget.getX() + widget.getWidth()) / getSize(); double minV = (double) widget.getY() / getSize(); double maxV = (double) (widget.getY() + widget.getHeight()) / getSize(); tes.pos(x, y + 0, zLevel).tex(minU, minV).endVertex(); final IWidgetIcon overlay = widget.getOverlay(); if (overlay != null) { overlay.getMap().render(overlay, x, y, width, height, zLevel, false, flipY);
public @Nonnull Rectangle renderTab(int x, int y, int w, @Nonnull ItemStack stack, @Nullable IWidgetIcon icon, boolean isActive) { int bg_x = isActive ? 0 : 3; int bg_w = w - 3 - bg_x; int l_x = isActive ? 0 : 3; int l_w = w - 3 - l_x; int r_x = 3; int r_w = w - r_x; int r_u = IconEIO.TAB_FRAME_LEFT.width - r_w; if (isActive) { GlStateManager.color(1, 1, 1, 1); } else { GlStateManager.color(.9f, .9f, .9f, 1); } BufferBuilder tes = Tessellator.getInstance().getBuffer(); RenderUtil.bindTexture(IconEIO.map.getTexture()); tes.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_TEX); renderTabPart(tes, x + bg_x, y, IconEIO.TAB_BG.getX() + bg_x, IconEIO.TAB_BG.getY(), bg_w, IconEIO.TAB_BG.getHeight()); renderTabPart(tes, x + l_x, y, IconEIO.TAB_FRAME_LEFT.getX() + l_x, IconEIO.TAB_FRAME_LEFT.getY(), l_w, IconEIO.TAB_FRAME_LEFT.getHeight()); renderTabPart(tes, x + r_x, y, IconEIO.TAB_FRAME_RIGHT.getX() + r_u, IconEIO.TAB_FRAME_RIGHT.getY(), r_w, IconEIO.TAB_FRAME_RIGHT.getHeight()); if (icon != null) { icon.getMap().render(icon, x + w / 2 - 8, y + IconEIO.TAB_BG.getHeight() / 2 - 8, false); } Tessellator.getInstance().draw(); if (Prep.isValid(stack)) { RenderHelper.enableGUIStandardItemLighting(); itemRender.renderItemIntoGUI(stack, x + w / 2 - 8, y + IconEIO.TAB_BG.getHeight() / 2 - 8); RenderHelper.disableStandardItemLighting(); } return new Rectangle(x + bg_x, y - 1, bg_w + 3 + 1, IconEIO.TAB_BG.getHeight() + 2); }