@Override public void drawButton(@Nonnull Minecraft par1Minecraft, int par2, int par3, float partialTicks) { hovered = par2 >= x && par3 >= y && par2 < x + width && par3 < y + height; int k = getHoverState(hovered); par1Minecraft.renderEngine.bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); GlStateManager.color(1F, 1F, 1F, 1F); par1Minecraft.getRenderItem().renderItemIntoGUI(new ItemStack(ModItems.cacophonium), x, y); par1Minecraft.getRenderItem().renderItemIntoGUI(new ItemStack(Items.FIREWORKS), x + 8, y + 2); GlStateManager.disableLighting(); List<String> tooltip = new ArrayList<>(); tooltip.add(TextFormatting.LIGHT_PURPLE + "Happy Birthday Vazkii!"); tooltip.add(TextFormatting.GRAY + "doot doot"); if(k == 2) RenderHelper.renderTooltip(x - 100, y + 36, tooltip); GlStateManager.enableAlpha(); }
public static void useShader(int shader, ShaderCallback callback) { if(!useShaders()) return; lighting = GL11.glGetBoolean(GL11.GL_LIGHTING); GlStateManager.disableLighting(); ARBShaderObjects.glUseProgramObjectARB(shader); if(shader != 0) { int time = ARBShaderObjects.glGetUniformLocationARB(shader, "time"); ARBShaderObjects.glUniform1iARB(time, ClientTickHandler.ticksInGame); if(callback != null) callback.call(shader); } }
public static void renderAll() { if(!redStringTiles.isEmpty()) { GlStateManager.pushMatrix(); GlStateManager.disableTexture2D(); GlStateManager.enableBlend(); GL11.glPushAttrib(GL11.GL_LIGHTING_BIT); GlStateManager.disableLighting(); GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GlStateManager.color(1F, 0F, 0F, sizeAlpha); TileRedString tile; while((tile = redStringTiles.poll()) != null) renderTile(tile); GlStateManager.enableTexture2D(); GlStateManager.disableBlend(); GL11.glPopAttrib(); GlStateManager.popMatrix(); } }
private static void drawTerraPick(ItemStack stack, int mouseX, int mouseY, int width, int height, FontRenderer font) { int level = ItemTerraPick.getLevel(stack); int max = ItemTerraPick.LEVELS[Math.min(ItemTerraPick.LEVELS.length - 1, level + 1)]; boolean ss = level >= ItemTerraPick.LEVELS.length - 1; int curr = ItemTerraPick.getMana_(stack); float percent = level == 0 ? 0F : (float) curr / (float) max; int rainbowWidth = Math.min(width - (ss ? 0 : 1), (int) (width * percent)); float huePer = width == 0 ? 0F : 1F / width; float hueOff = (ClientTickHandler.ticksInGame + ClientTickHandler.partialTicks) * 0.01F; GlStateManager.disableDepth(); Gui.drawRect(mouseX - 1, mouseY - height - 1, mouseX + width + 1, mouseY, 0xFF000000); for(int i = 0; i < rainbowWidth; i++) Gui.drawRect(mouseX + i, mouseY - height, mouseX + i + 1, mouseY, Color.HSBtoRGB(hueOff + huePer * i, 1F, 1F)); Gui.drawRect(mouseX + rainbowWidth, mouseY - height, mouseX + width, mouseY, 0xFF555555); String rank = I18n.format("botania.rank" + level).replaceAll("&", "\u00a7"); GL11.glPushAttrib(GL11.GL_LIGHTING_BIT); GlStateManager.disableLighting(); font.drawStringWithShadow(rank, mouseX, mouseY - 12, 0xFFFFFF); if(!ss) { rank = I18n.format("botania.rank" + (level + 1)).replaceAll("&", "\u00a7"); font.drawStringWithShadow(rank, mouseX + width - font.getStringWidth(rank), mouseY - 12, 0xFFFFFF); } GlStateManager.enableLighting(); GlStateManager.enableDepth(); GL11.glPopAttrib(); }
protected void drawGuiSlot( GuiCustomSlot slot, int mouseX, int mouseY, float partialTicks ) { if( slot.isSlotEnabled() ) { final int left = slot.xPos(); final int top = slot.yPos(); final int right = left + slot.getWidth(); final int bottom = top + slot.getHeight(); slot.drawContent( this.mc, mouseX, mouseY, partialTicks ); if( this.isPointInRegion( left, top, slot.getWidth(), slot.getHeight(), mouseX, mouseY ) && slot.canClick( this.mc.player ) ) { GlStateManager.disableLighting(); GlStateManager.colorMask( true, true, true, false ); this.drawGradientRect( left, top, right, bottom, -2130706433, -2130706433 ); GlStateManager.colorMask( true, true, true, true ); GlStateManager.enableLighting(); } } }
GlStateManager.disableLighting(); renderIcon(0, 0, MiscellaneousIcons.INSTANCE.alfPortalTex, 3, 3, 240);
public static void dispatch() { Tessellator tessellator = Tessellator.getInstance(); Profiler profiler = Minecraft.getMinecraft().profiler; GL11.glPushAttrib(GL11.GL_LIGHTING_BIT); GlStateManager.depthMask(false); GlStateManager.enableBlend(); GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE); GlStateManager.alphaFunc(GL11.GL_GREATER, 0.003921569F); GlStateManager.disableLighting(); profiler.startSection("sparkle"); FXSparkle.dispatchQueuedRenders(tessellator); profiler.endStartSection("wisp"); FXWisp.dispatchQueuedRenders(tessellator); profiler.endSection(); GlStateManager.alphaFunc(GL11.GL_GREATER, 0.1F); GlStateManager.disableBlend(); GlStateManager.depthMask(true); GL11.glPopAttrib(); }
@SideOnly(Side.CLIENT) @Override public void renderHUD(Minecraft mc, ScaledResolution res) { super.renderHUD(mc, res); ItemStack stack = new ItemStack(Blocks.WOOL, 1, nextColor); int color = getColor(); GlStateManager.enableBlend(); GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); if(!stack.isEmpty()) { String stackName = stack.getDisplayName(); int width = 16 + mc.fontRenderer.getStringWidth(stackName) / 2; int x = res.getScaledWidth() / 2 - width; int y = res.getScaledHeight() / 2 + 30; mc.fontRenderer.drawStringWithShadow(stackName, x + 20, y + 5, color); RenderHelper.enableGUIStandardItemLighting(); mc.getRenderItem().renderItemAndEffectIntoGUI(stack, x, y); RenderHelper.disableStandardItemLighting(); } GlStateManager.disableLighting(); GlStateManager.disableBlend(); }
@Override public void drawContent( final Minecraft mc, final int mouseX, final int mouseY, final float partialTicks ) { final IAEFluidStack fs = this.getFluidStack(); if( fs != null ) { GlStateManager.disableLighting(); GlStateManager.disableBlend(); final Fluid fluid = fs.getFluid(); mc.getTextureManager().bindTexture( TextureMap.LOCATION_BLOCKS_TEXTURE ); final TextureAtlasSprite sprite = mc.getTextureMapBlocks().getAtlasSprite( fluid.getStill().toString() ); // Set color for dynamic fluids // Convert int color to RGB final float red = ( fluid.getColor() >> 16 & 255 ) / 255.0F; final float green = ( fluid.getColor() >> 8 & 255 ) / 255.0F; final float blue = ( fluid.getColor() & 255 ) / 255.0F; GlStateManager.color( red, green, blue ); this.drawTexturedModalRect( this.xPos(), this.yPos(), sprite, this.getWidth(), this.getHeight() ); } }
@SideOnly(Side.CLIENT) public void renderHUD(Minecraft mc, ScaledResolution res) { ItemStack pool = new ItemStack(ModBlocks.pool, 1, world.getBlockState(getPos()).getValue(BotaniaStateProps.POOL_VARIANT).ordinal()); String name = I18n.format(pool.getTranslationKey().replaceAll("tile.", "tile." + LibResources.PREFIX_MOD) + ".name"); int color = 0x4444FF; HUDHandler.drawSimpleManaHUD(color, knownMana, manaCap, name, res); int x = res.getScaledWidth() / 2 - 11; int y = res.getScaledHeight() / 2 + 30; int u = outputting ? 22 : 0; int v = 38; GlStateManager.enableBlend(); GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); mc.renderEngine.bindTexture(HUDHandler.manaBar); RenderHelper.drawTexturedModalRect(x, y, 0, u, v, 22, 15); GlStateManager.color(1F, 1F, 1F, 1F); ItemStack tablet = new ItemStack(ModItems.manaTablet); ItemManaTablet.setStackCreative(tablet); net.minecraft.client.renderer.RenderHelper.enableGUIStandardItemLighting(); mc.getRenderItem().renderItemAndEffectIntoGUI(tablet, x - 20, y); mc.getRenderItem().renderItemAndEffectIntoGUI(pool, x + 26, y); net.minecraft.client.renderer.RenderHelper.disableStandardItemLighting(); GlStateManager.disableLighting(); GlStateManager.disableBlend(); }
float a = 0.5F + 0.2F * ((float) Math.cos((double) (ClientTickHandler.ticksInGame + ClientTickHandler.partialTicks) / 10) * 0.5F + 0.5F); GlStateManager.disableLighting(); GlStateManager.disableTexture2D(); GlStateManager.shadeModel(GL11.GL_SMOOTH);
private static void renderPoolRecipeHUD(ScaledResolution res, TilePool tile, ItemStack stack) { Minecraft mc = Minecraft.getMinecraft(); Profiler profiler = mc.profiler; profiler.startSection("poolRecipe"); RecipeManaInfusion recipe = TilePool.getMatchingRecipe(stack, tile.getWorld().getBlockState(tile.getPos().down())); if(recipe != null) { int x = res.getScaledWidth() / 2 - 11; int y = res.getScaledHeight() / 2 + 10; int u = tile.getCurrentMana() >= recipe.getManaToConsume() ? 0 : 22; int v = mc.player.getName().equals("haighyorkie") && mc.player.isSneaking() ? 23 : 8; GlStateManager.enableBlend(); GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); mc.renderEngine.bindTexture(manaBar); RenderHelper.drawTexturedModalRect(x, y, 0, u, v, 22, 15); GlStateManager.color(1F, 1F, 1F, 1F); net.minecraft.client.renderer.RenderHelper.enableGUIStandardItemLighting(); mc.getRenderItem().renderItemAndEffectIntoGUI(stack, x - 20, y); mc.getRenderItem().renderItemAndEffectIntoGUI(recipe.getOutput(), x + 26, y); mc.getRenderItem().renderItemOverlays(mc.fontRenderer, recipe.getOutput(), x + 26, y); net.minecraft.client.renderer.RenderHelper.disableStandardItemLighting(); GlStateManager.disableLighting(); GlStateManager.disableBlend(); } profiler.endSection(); }
public void renderStackSize( FontRenderer fontRenderer, IAEFluidStack aeStack, int xPos, int yPos ) { if( aeStack != null ) { final float scaleFactor = AEConfig.instance().useTerminalUseLargeFont() ? 0.85f : 0.5f; final float inverseScaleFactor = 1.0f / scaleFactor; final int offset = AEConfig.instance().useTerminalUseLargeFont() ? 0 : -1; final boolean unicodeFlag = fontRenderer.getUnicodeFlag(); fontRenderer.setUnicodeFlag( false ); if( aeStack.getStackSize() > 0 ) { final String stackSize = this.getToBeRenderedStackSize( aeStack.getStackSize() ); GlStateManager.disableLighting(); GlStateManager.disableDepth(); GlStateManager.disableBlend(); GlStateManager.pushMatrix(); GlStateManager.scale( scaleFactor, scaleFactor, scaleFactor ); final int X = (int) ( ( (float) xPos + offset + 16.0f - fontRenderer.getStringWidth( stackSize ) * scaleFactor ) * inverseScaleFactor ); final int Y = (int) ( ( (float) yPos + offset + 16.0f - 7.0f * scaleFactor ) * inverseScaleFactor ); fontRenderer.drawStringWithShadow( stackSize, X, Y, 16777215 ); GlStateManager.popMatrix(); GlStateManager.enableLighting(); GlStateManager.enableDepth(); GlStateManager.enableBlend(); } fontRenderer.setUnicodeFlag( unicodeFlag ); } }
mc.getRenderItem().renderItemAndEffectIntoGUI(lens, x, y); RenderHelper.disableStandardItemLighting(); GlStateManager.disableLighting(); GlStateManager.disableBlend(); GlStateManager.disableLighting(); GlStateManager.disableBlend();
@SideOnly(Side.CLIENT) @Override public void renderHUD(Minecraft mc, ScaledResolution res) { super.renderHUD(mc, res); IBlockState filter = getUnderlyingBlock(); ItemStack recieverStack = new ItemStack(Item.getItemFromBlock(filter.getBlock()), 1, filter.getBlock().getMetaFromState(filter)); int color = getColor(); GlStateManager.enableBlend(); GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); if(!recieverStack.isEmpty()) { String stackName = recieverStack.getDisplayName(); int width = 16 + mc.fontRenderer.getStringWidth(stackName) / 2; int x = res.getScaledWidth() / 2 - width; int y = res.getScaledHeight() / 2 + 30; mc.fontRenderer.drawStringWithShadow(stackName, x + 20, y + 5, color); RenderHelper.enableGUIStandardItemLighting(); mc.getRenderItem().renderItemAndEffectIntoGUI(recieverStack, x, y); RenderHelper.disableStandardItemLighting(); } GlStateManager.disableLighting(); GlStateManager.disableBlend(); }
@SideOnly(Side.CLIENT) public void renderItem(IGuiLexiconEntry gui, int xPos, int yPos, ItemStack stack) { RenderItem render = Minecraft.getMinecraft().getRenderItem(); boolean mouseDown = Mouse.isButtonDown(0); GlStateManager.pushMatrix(); GlStateManager.enableBlend(); GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); RenderHelper.enableGUIStandardItemLighting(); GlStateManager.enableRescaleNormal(); GlStateManager.enableDepth(); render.renderItemAndEffectIntoGUI(stack, xPos, yPos); render.renderItemOverlays(Minecraft.getMinecraft().fontRenderer, stack, xPos, yPos); RenderHelper.disableStandardItemLighting(); GlStateManager.popMatrix(); if(relativeMouseX >= xPos && relativeMouseY >= yPos && relativeMouseX <= xPos + 16 && relativeMouseY <= yPos + 16) { tooltipStack = stack; EntryData data = LexiconRecipeMappings.getDataForStack(tooltipStack); if(data != null && (data.entry != gui.getEntry() || data.page != gui.getPageOn())) { tooltipEntry = true; if(!mouseDownLastTick && mouseDown && GuiScreen.isShiftKeyDown()) { GuiLexiconEntry newGui = new GuiLexiconEntry(data.entry, (GuiScreen) gui); newGui.page = data.page; Minecraft.getMinecraft().displayGuiScreen(newGui); } } } GlStateManager.disableLighting(); }
private static void renderPlayerLook(EntityPlayer player, RayTraceResult src) { if(currentMultiblock != null && dimension == player.world.provider.getDimension()) { BlockPos anchorPos = anchor != null ? anchor : src.getBlockPos(); GlStateManager.pushMatrix(); GL11.glPushAttrib(GL11.GL_LIGHTING_BIT); GlStateManager.enableBlend(); GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GlStateManager.disableLighting(); rendering = true; Multiblock mb = anchor != null ? currentMultiblock.getForFacing(angle) : currentMultiblock.getForEntity(player); boolean didAny = false; blockAccess.update(player.world, mb, anchorPos); ShaderHelper.useShader(ShaderHelper.alpha, shader -> { int alpha = ARBShaderObjects.glGetUniformLocationARB(shader, "alpha"); ARBShaderObjects.glUniform1fARB(alpha, 0.4F); }); for(MultiblockComponent comp : mb.getComponents()) { if(renderComponentInWorld(player.world, mb, comp, anchorPos)) didAny = true; } ShaderHelper.releaseShader(); rendering = false; GL11.glPopAttrib(); GlStateManager.popMatrix(); if(!didAny) { setMultiblock(null); player.sendMessage(new TextComponentTranslation("botaniamisc.structureComplete").setStyle(new Style().setColor(TextFormatting.GREEN))); } } }
@Override public void drawButton( final Minecraft mc, final int mouseX, final int mouseY, final float partialTicks ) { if( this.visible ) { GlStateManager.disableBlend(); GlStateManager.disableLighting(); drawRect( this.x, this.y, this.x + this.width, this.y + this.height, AEColor.GRAY.blackVariant | 0xFF000000 ); final IAEFluidStack fluid = this.tank.getFluidInSlot( this.slot ); if( fluid != null && fluid.getStackSize() > 0 ) { mc.getTextureManager().bindTexture( TextureMap.LOCATION_BLOCKS_TEXTURE ); float red = ( fluid.getFluid().getColor() >> 16 & 255 ) / 255.0F; float green = ( fluid.getFluid().getColor() >> 8 & 255 ) / 255.0F; float blue = ( fluid.getFluid().getColor() & 255 ) / 255.0F; GlStateManager.color( red, green, blue ); TextureAtlasSprite sprite = mc.getTextureMapBlocks().getAtlasSprite( fluid.getFluid().getStill().toString() ); final int scaledHeight = (int) ( this.height * ( (float) fluid.getStackSize() / this.tank.getTankProperties()[this.slot].getCapacity() ) ); int iconHeightRemainder = scaledHeight % 16; if( iconHeightRemainder > 0 ) { this.drawTexturedModalRect( this.x, this.y + this.height - iconHeightRemainder, sprite, 16, iconHeightRemainder ); } for( int i = 0; i < scaledHeight / 16; i++ ) { this.drawTexturedModalRect( this.x, this.y + this.height - iconHeightRemainder - ( i + 1 ) * 16, sprite, 16, 16 ); } } } }
GlStateManager.disableLighting();
GlStateManager.shadeModel(GL11.GL_SMOOTH); OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, 240, 240); GlStateManager.disableLighting(); GlStateManager.disableCull(); GlStateManager.color(1F, 1F, 1F, 1F);