Possible hotfix for optifine crash

This commit is contained in:
Ben Spiers 2013-07-31 03:28:46 +01:00
parent 5f27a06983
commit 248a976593

View file

@ -31,7 +31,8 @@ public class MekanismRenderer
private static float lightmapLastX; private static float lightmapLastX;
private static float lightmapLastY; private static float lightmapLastY;
private static boolean optifineBreak = false;
public static class Model3D public static class Model3D
{ {
public double minX; public double minX;
@ -145,15 +146,29 @@ public class MekanismRenderer
public static void glowOn() public static void glowOn()
{ {
GL11.glPushAttrib(GL11.GL_LIGHTING_BIT); GL11.glPushAttrib(GL11.GL_LIGHTING_BIT);
lightmapLastX = OpenGlHelper.lastBrightnessX; try
lightmapLastY = OpenGlHelper.lastBrightnessY; {
lightmapLastX = OpenGlHelper.lastBrightnessX;
lightmapLastY = OpenGlHelper.lastBrightnessY;
}
catch(NoSuchFieldError e)
{
optifineBreak = true;
}
RenderHelper.disableStandardItemLighting(); RenderHelper.disableStandardItemLighting();
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, 240.0F, 240.0F); if(!optifineBreak)
{
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, 240.0F, 240.0F);
}
} }
public static void glowOff() public static void glowOff()
{ {
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, lightmapLastX, lightmapLastY); if(!optifineBreak)
{
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, lightmapLastX, lightmapLastY);
}
GL11.glPopAttrib(); GL11.glPopAttrib();
} }