BloodMagic/src/main/java/WayofTime/alchemicalWizardry/client/renderer/RenderFakeBlocks.java

104 lines
3.8 KiB
Java
Raw Normal View History

2015-04-19 12:23:24 -04:00
package WayofTime.alchemicalWizardry.client.renderer;
import net.minecraft.block.Block;
import net.minecraft.client.renderer.Tessellator;
2015-07-29 08:23:01 -04:00
import net.minecraft.client.renderer.WorldRenderer;
2015-04-19 12:23:24 -04:00
import net.minecraft.world.World;
2015-04-19 12:26:13 -04:00
/*
* Created in Scala by Alex-Hawks
* Translated and implemented by Arcaratus
*/
2015-04-19 12:23:24 -04:00
public class RenderFakeBlocks
{
public static void drawFakeBlock(WayofTime.alchemicalWizardry.api.Vector3 vector3, Block block, int meta, double minX, double minY, double minZ, World world)
{
double maxX = minX + 1;
double maxY = minY + 1;
double maxZ = minZ + 1;
2015-07-29 08:23:01 -04:00
Tessellator tessellator = Tessellator.getInstance();
WorldRenderer wr = tessellator.getWorldRenderer();
2015-04-19 22:24:30 -04:00
2015-07-29 08:23:01 -04:00
wr.startDrawingQuads();
// wr.setColorRGBA(255, 255, 255, 200);
2015-04-19 12:23:24 -04:00
float texMinU, texMaxU, texMinV, texMaxV;
texMinU = getMinU(block, meta, 0);
texMaxU = getMaxU(block, meta, 0);
texMinV = getMinV(block, meta, 0);
texMaxV = getMaxV(block, meta, 0);
2015-07-29 08:23:01 -04:00
wr.addVertexWithUV(minX, minY, minZ, texMinU, texMinV);
wr.addVertexWithUV(maxX, minY, minZ, texMaxU, texMinV);
wr.addVertexWithUV(maxX, minY, maxZ, texMaxU, texMaxV);
wr.addVertexWithUV(minX, minY, maxZ, texMinU, texMaxV);
2015-04-19 12:23:24 -04:00
texMinU = getMinU(block, meta, 1);
texMaxU = getMaxU(block, meta, 1);
texMinV = getMinV(block, meta, 1);
texMaxV = getMaxV(block, meta, 1);
2015-07-29 08:23:01 -04:00
wr.addVertexWithUV(minX, maxY, maxZ, texMinU, texMaxV);
wr.addVertexWithUV(maxX, maxY, maxZ, texMaxU, texMaxV);
wr.addVertexWithUV(maxX, maxY, minZ, texMaxU, texMinV);
wr.addVertexWithUV(minX, maxY, minZ, texMinU, texMinV);
2015-04-19 12:23:24 -04:00
texMinU = getMinU(block, meta, 2);
texMaxU = getMaxU(block, meta, 2);
texMinV = getMinV(block, meta, 2);
texMaxV = getMaxV(block, meta, 2);
2015-07-29 08:23:01 -04:00
wr.addVertexWithUV(maxX, minY, minZ, texMinU, texMaxV);
wr.addVertexWithUV(minX, minY, minZ, texMaxU, texMaxV);
wr.addVertexWithUV(minX, maxY, minZ, texMaxU, texMinV);
wr.addVertexWithUV(maxX, maxY, minZ, texMinU, texMinV);
2015-04-19 12:23:24 -04:00
texMinU = getMinU(block, meta, 3);
texMaxU = getMaxU(block, meta, 3);
texMinV = getMinV(block, meta, 3);
texMaxV = getMaxV(block, meta, 3);
2015-07-29 08:23:01 -04:00
wr.addVertexWithUV(minX, minY, maxZ, texMinU, texMaxV);
wr.addVertexWithUV(maxX, minY, maxZ, texMaxU, texMaxV);
wr.addVertexWithUV(maxX, maxY, maxZ, texMaxU, texMinV);
wr.addVertexWithUV(minX, maxY, maxZ, texMinU, texMinV);
2015-04-19 12:23:24 -04:00
texMinU = getMinU(block, meta, 4);
texMaxU = getMaxU(block, meta, 4);
texMinV = getMinV(block, meta, 4);
texMaxV = getMaxV(block, meta, 4);
2015-07-29 08:23:01 -04:00
wr.addVertexWithUV(minX, minY, minZ, texMinU, texMaxV);
wr.addVertexWithUV(minX, minY, maxZ, texMaxU, texMaxV);
wr.addVertexWithUV(minX, maxY, maxZ, texMaxU, texMinV);
wr.addVertexWithUV(minX, maxY, minZ, texMinU, texMinV);
2015-04-19 12:23:24 -04:00
texMinU = getMinU(block, meta, 5);
texMaxU = getMaxU(block, meta, 5);
texMinV = getMinV(block, meta, 5);
texMaxV = getMaxV(block, meta, 5);
2015-07-29 08:23:01 -04:00
wr.addVertexWithUV(maxX, minY, maxZ, texMinU, texMaxV);
wr.addVertexWithUV(maxX, minY, minZ, texMaxU, texMaxV);
wr.addVertexWithUV(maxX, maxY, minZ, texMaxU, texMinV);
wr.addVertexWithUV(maxX, maxY, maxZ, texMinU, texMinV);
2015-04-19 12:23:24 -04:00
tessellator.draw();
}
private static float getMinU(Block block, int meta, int side)
{
2015-07-29 08:23:01 -04:00
return 0;
2015-04-19 12:23:24 -04:00
}
private static float getMaxU(Block block, int meta, int side)
{
2015-07-29 08:23:01 -04:00
return 256;
2015-04-19 12:23:24 -04:00
}
private static float getMinV(Block block, int meta, int side)
{
2015-07-29 08:23:01 -04:00
return 0;
2015-04-19 12:23:24 -04:00
}
private static float getMaxV(Block block, int meta, int side)
{
2015-07-29 08:23:01 -04:00
return 256;
2015-04-19 12:23:24 -04:00
}
}