private static void renderTextOverlay(Vec3 offset, List present, List missing, ItemStack ghosted, ItemStack stack, float scale, Vec3 textOffset) { FontRenderer fontrenderer = Minecraft.getMinecraft().fontRendererObj; if (ghosted != null) { stack = ghosted; } if (stack != null) { net.minecraft.client.renderer.RenderHelper.enableStandardItemLighting(); GL11.glPushMatrix(); rotateToPlayer(); GL11.glTranslated(offset.xCoord + -0.5 + textOffset.xCoord, offset.yCoord + 0.5 + textOffset.yCoord, offset.zCoord + 0.2 + textOffset.zCoord); float f3 = 0.0075F; float factor = 1.5f; GlStateManager.scale(f3 * factor, -f3 * factor, f3); GlStateManager.disableLighting(); GlStateManager.color(1.0f, 1.0f, 1.0f, 1.0f); GlStateManager.disableDepth(); if ((!missing.isEmpty()) || (!present.isEmpty())) { GlStateManager.pushMatrix(); GlStateManager.scale(.5, .5, .5); int y = 60 - 10; for (String s : missing) { fontrenderer.drawStringWithShadow(s, 60, y, 0xffff0000); y -= 10; } for (String s : present) { fontrenderer.drawStringWithShadow(s, 60, y, 0xff00ff00); y -= 10; } GlStateManager.popMatrix(); } fontrenderer.drawStringWithShadow(String.valueOf(stack.stackSize), 40, 40, 0xffffffff); GlStateManager.enableDepth(); GlStateManager.enableLighting(); GL11.glPopMatrix(); } }