Discover native block colouring support within normal block rendering code.
This commit is contained in:
parent
3dd06cca78
commit
1a6030c1a5
5 changed files with 10 additions and 38 deletions
|
@ -155,6 +155,7 @@ public class ClientProxy extends CommonProxy
|
||||||
public static int MACHINE_RENDER_ID = RenderingRegistry.getNextAvailableRenderId();
|
public static int MACHINE_RENDER_ID = RenderingRegistry.getNextAvailableRenderId();
|
||||||
public static int TRANSMITTER_RENDER_ID = RenderingRegistry.getNextAvailableRenderId();
|
public static int TRANSMITTER_RENDER_ID = RenderingRegistry.getNextAvailableRenderId();
|
||||||
public static int BASIC_RENDER_ID = RenderingRegistry.getNextAvailableRenderId();
|
public static int BASIC_RENDER_ID = RenderingRegistry.getNextAvailableRenderId();
|
||||||
|
public static int PLASTIC_RENDER_ID = RenderingRegistry.getNextAvailableRenderId();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void loadConfiguration()
|
public void loadConfiguration()
|
||||||
|
@ -318,7 +319,6 @@ public class ClientProxy extends CommonProxy
|
||||||
ClientRegistry.registerTileEntity(TileEntityChemicalWasher.class, "ChemicalWasher", new RenderChemicalWasher());
|
ClientRegistry.registerTileEntity(TileEntityChemicalWasher.class, "ChemicalWasher", new RenderChemicalWasher());
|
||||||
ClientRegistry.registerTileEntity(TileEntityChemicalCrystallizer.class, "ChemicalCrystallizer", new RenderChemicalCrystallizer());
|
ClientRegistry.registerTileEntity(TileEntityChemicalCrystallizer.class, "ChemicalCrystallizer", new RenderChemicalCrystallizer());
|
||||||
ClientRegistry.registerTileEntity(TileEntityPRC.class, "PressurizedReactionChamber", new RenderConfigurableMachine());
|
ClientRegistry.registerTileEntity(TileEntityPRC.class, "PressurizedReactionChamber", new RenderConfigurableMachine());
|
||||||
ClientRegistry.registerTileEntity(TileEntityPlasticBlock.class, "PlasticBlock", new RenderPlastic());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -17,7 +17,7 @@ import org.lwjgl.opengl.GL11;
|
||||||
|
|
||||||
|
|
||||||
@SideOnly(Side.CLIENT)
|
@SideOnly(Side.CLIENT)
|
||||||
public class RenderPlastic extends TileEntitySpecialRenderer
|
public class RenderPlastic
|
||||||
{
|
{
|
||||||
public static Model3D toRender;
|
public static Model3D toRender;
|
||||||
|
|
||||||
|
@ -27,27 +27,6 @@ public class RenderPlastic extends TileEntitySpecialRenderer
|
||||||
toRender.setBlockBounds(0,0,0,1,1,1);
|
toRender.setBlockBounds(0,0,0,1,1,1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float partialTick)
|
|
||||||
{
|
|
||||||
renderAModelAt((TileEntityPlasticBlock) tileEntity, x, y, z, partialTick);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void renderAModelAt(TileEntityPlasticBlock plastic, double x, double y, double z, float partialTick)
|
|
||||||
{
|
|
||||||
GL11.glPushMatrix();
|
|
||||||
GL11.glTranslatef((float) x, (float) y, (float) z);
|
|
||||||
bindTexture(MekanismRenderer.getBlocksTexture());
|
|
||||||
|
|
||||||
toRender.setTexture(Mekanism.BlockHDPE.getBlockTexture(plastic.worldObj, plastic.xCoord, plastic.yCoord, plastic.zCoord, 0));
|
|
||||||
EnumColor color = EnumColor.DYES[plastic.colour];
|
|
||||||
float[] colour = {color.getColor(0), color.getColor(1), color.getColor(2)};
|
|
||||||
GL11.glColor3f(colour[0], colour[1], colour[2]);
|
|
||||||
RenderHelper.disableStandardItemLighting();
|
|
||||||
MekanismRenderer.renderObject(toRender);
|
|
||||||
GL11.glPopMatrix();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void renderItem(ItemStack stack)
|
public static void renderItem(ItemStack stack)
|
||||||
{
|
{
|
||||||
GL11.glPushMatrix();
|
GL11.glPushMatrix();
|
||||||
|
|
|
@ -129,7 +129,6 @@ public class CommonProxy
|
||||||
GameRegistry.registerTileEntity(TileEntityChemicalWasher.class, "ChemicalWasher");
|
GameRegistry.registerTileEntity(TileEntityChemicalWasher.class, "ChemicalWasher");
|
||||||
GameRegistry.registerTileEntity(TileEntityChemicalCrystallizer.class, "ChemicalCrystallizer");
|
GameRegistry.registerTileEntity(TileEntityChemicalCrystallizer.class, "ChemicalCrystallizer");
|
||||||
GameRegistry.registerTileEntity(TileEntityPRC.class, "PressurizedReactionChamber");
|
GameRegistry.registerTileEntity(TileEntityPRC.class, "PressurizedReactionChamber");
|
||||||
GameRegistry.registerTileEntity(TileEntityPlasticBlock.class, "PlasticBlock");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -126,6 +126,7 @@ import mekanism.common.tile.TileEntityBoundingBlock;
|
||||||
import mekanism.common.tile.TileEntityCardboardBox;
|
import mekanism.common.tile.TileEntityCardboardBox;
|
||||||
import mekanism.common.tile.TileEntityElectricBlock;
|
import mekanism.common.tile.TileEntityElectricBlock;
|
||||||
import mekanism.common.tile.TileEntityEnergizedSmelter;
|
import mekanism.common.tile.TileEntityEnergizedSmelter;
|
||||||
|
import mekanism.common.tile.TileEntityPlasticBlock;
|
||||||
import mekanism.common.tile.TileEntitySalinationTank;
|
import mekanism.common.tile.TileEntitySalinationTank;
|
||||||
import mekanism.common.tile.TileEntitySalinationValve;
|
import mekanism.common.tile.TileEntitySalinationValve;
|
||||||
import mekanism.common.tile.TileEntitySeismicVibrator;
|
import mekanism.common.tile.TileEntitySeismicVibrator;
|
||||||
|
@ -1164,6 +1165,7 @@ public class Mekanism
|
||||||
GameRegistry.registerTileEntity(TileEntitySeismicVibrator.class, "SeismicVibrator");
|
GameRegistry.registerTileEntity(TileEntitySeismicVibrator.class, "SeismicVibrator");
|
||||||
GameRegistry.registerTileEntity(TileEntitySalinationValve.class, "SalinationValve");
|
GameRegistry.registerTileEntity(TileEntitySalinationValve.class, "SalinationValve");
|
||||||
GameRegistry.registerTileEntity(TileEntitySalinationTank.class, "SalinationTank");
|
GameRegistry.registerTileEntity(TileEntitySalinationTank.class, "SalinationTank");
|
||||||
|
GameRegistry.registerTileEntity(TileEntityPlasticBlock.class, "PlasticBlock");
|
||||||
|
|
||||||
//Load tile entities that have special renderers.
|
//Load tile entities that have special renderers.
|
||||||
proxy.registerSpecialTileEntities();
|
proxy.registerSpecialTileEntities();
|
||||||
|
|
|
@ -2,6 +2,8 @@ package mekanism.common.block;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import mekanism.api.EnumColor;
|
||||||
|
import mekanism.client.ClientProxy;
|
||||||
import mekanism.common.Mekanism;
|
import mekanism.common.Mekanism;
|
||||||
import mekanism.common.tile.TileEntityPlasticBlock;
|
import mekanism.common.tile.TileEntityPlasticBlock;
|
||||||
|
|
||||||
|
@ -76,21 +78,11 @@ public class BlockPlastic extends Block
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean renderAsNormalBlock()
|
public int colorMultiplier(IBlockAccess world, int x, int y, int z)
|
||||||
{
|
{
|
||||||
return false;
|
TileEntityPlasticBlock plastic = (TileEntityPlasticBlock)world.getBlockTileEntity(x, y, z);
|
||||||
}
|
EnumColor colour = EnumColor.DYES[plastic.colour];
|
||||||
|
return (int)(colour.getColor(0)*255) << 16 | (int)(colour.getColor(1)*255) << 8 | (int)(colour.getColor(2)*255);
|
||||||
@Override
|
|
||||||
public boolean isOpaqueCube()
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getRenderType()
|
|
||||||
{
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Reference in a new issue