diff --git a/src/main/java/electroblob/wizardry/client/renderer/LayerFrost.java b/src/main/java/electroblob/wizardry/client/renderer/LayerFrost.java index ae8536dd..a0b775fb 100644 --- a/src/main/java/electroblob/wizardry/client/renderer/LayerFrost.java +++ b/src/main/java/electroblob/wizardry/client/renderer/LayerFrost.java @@ -112,7 +112,7 @@ public class LayerFrost implements LayerRenderer { double scaleX = 1, scaleY = 1; // It's more logical to use the model's texture size, but some classes don't bother setting it properly // (e.g. ModelVillager), so to get the correct dimensions I'm getting them from the first box instead. - if(model.boxList != null && model.boxList.get(0) != null){ + if(model.boxList != null && model.boxList.size() >= 1 && model.boxList.get(0) != null){ scaleX = (double)model.boxList.get(0).textureWidth / 16d; scaleY = (double)model.boxList.get(0).textureHeight / 16d; }else{ // Fallback to model fields; should never be needed diff --git a/src/main/java/electroblob/wizardry/client/renderer/RenderArcaneLock.java b/src/main/java/electroblob/wizardry/client/renderer/RenderArcaneLock.java index 79fc9206..a9f36d1e 100644 --- a/src/main/java/electroblob/wizardry/client/renderer/RenderArcaneLock.java +++ b/src/main/java/electroblob/wizardry/client/renderer/RenderArcaneLock.java @@ -42,6 +42,7 @@ public class RenderArcaneLock { GlStateManager.pushMatrix(); GlStateManager.enableBlend(); + boolean lighting = GL11.glIsEnabled(GL11.GL_LIGHTING); GlStateManager.disableLighting(); OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, 240, 240); GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); @@ -84,7 +85,9 @@ public class RenderArcaneLock { GlStateManager.disableBlend(); GlStateManager.enableTexture2D(); - GlStateManager.enableLighting(); + if (lighting) { + GlStateManager.enableLighting(); + } GlStateManager.disableRescaleNormal(); GlStateManager.popMatrix(); }