add color multiplier support to armor rendering, fix #2819, add changelog

This commit is contained in:
Adrian 2015-06-18 16:56:36 +02:00
parent 8e357d961c
commit a2abe40d91
2 changed files with 21 additions and 0 deletions

View file

@ -0,0 +1,10 @@
Additions:
* Leather/dyed armour support on robots (asie)
* Make mining robots work with GregTech ores (zmaster587, asie)
* Robots can now be filtered in Force/Forbid by wearable, not just by type (asie)
Bugs fixed:
* [#2820] CME in map generation (asie)
* Zone planner maps not generating (asie)

View file

@ -249,6 +249,13 @@ public class RenderRobot extends Render implements IItemRenderer {
GL11.glScalef(1.0125F, 1.0125F, 1.0125F);
GL11.glTranslatef(0.0f, -0.25f, 0.0f);
GL11.glRotatef(180F, 0, 0, 1);
int color = wearable.getItem().getColorFromItemStack(wearable, 0);
if (color != 16777215) {
GL11.glPushAttrib(GL11.GL_COLOR_BUFFER_BIT);
GL11.glColor3ub((byte) (color >> 16), (byte) ((color >> 8) & 255), (byte) (color & 255));
}
textureManager.bindTexture(RenderBiped.getArmorResource(entity, wearable, 0, null));
ModelBiped armorModel = ForgeHooksClient.getArmorModel(entity, wearable, 0, null);
if (armorModel != null) {
@ -257,6 +264,10 @@ public class RenderRobot extends Render implements IItemRenderer {
GL11.glRotatef(-90.0f, 0.0f, 1.0f, 0.0f);
helmetBox.render(1 / 16F);
}
if (color != 16777215) {
GL11.glPopAttrib();
}
GL11.glPopMatrix();
} else if (wearable.getItem() instanceof ItemSkull) {
doRenderSkull(wearable);