Attempt to fix repository

This commit is contained in:
WayofTime 2015-07-31 12:09:09 -04:00
parent e242207d50
commit 1aac4686db
932 changed files with 39272 additions and 11544 deletions

View file

@ -0,0 +1,420 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentContainerInfo;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentStack;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelAlchemicalCalcinator;
import WayofTime.alchemicalWizardry.common.tileEntity.TEAlchemicCalcinator;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
public class RenderAlchemicCalcinator extends TileEntitySpecialRenderer
{
private final RenderItem customRenderItem;
private ModelAlchemicalCalcinator modelConduit = new ModelAlchemicalCalcinator();
private ResourceLocation resourceLocation = new ResourceLocation("alchemicalwizardry:textures/models/Reagent.png");
public RenderAlchemicCalcinator()
{
customRenderItem = new RenderItem()
{
@Override
public boolean shouldBob()
{
return false;
}
};
customRenderItem.setRenderManager(RenderManager.instance);
}
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TEAlchemicCalcinator)
{
TEAlchemicCalcinator tileAltar = (TEAlchemicCalcinator) tileEntity;
GL11.glPushMatrix();
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + 1.5F, (float) d2 + 0.5F);
ResourceLocation test = new ResourceLocation("alchemicalwizardry:textures/models/AlchemicalCalcinator.png");
FMLClientHandler.instance().getClient().renderEngine.bindTexture(test);
GL11.glPushMatrix();
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
this.modelConduit.render(null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F);
GL11.glPopMatrix();
GL11.glPopMatrix();
GL11.glPushMatrix();
if (tileAltar.getStackInSlot(1) != null)
{
float scaleFactor = getGhostItemScaleFactor(tileAltar.getStackInSlot(1));
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorldObj());
ghostEntityItem.hoverStart = 0.0F;
ghostEntityItem.setEntityItemStack(tileAltar.getStackInSlot(1));
float displacement = 0.2F;
if (ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock)
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 0.7F, (float) d2 + 0.5F);
} else
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 10.4f / 16.0f, (float) d2 + 0.5F - 0.0625f * 2f);
}
GL11.glScalef(scaleFactor, scaleFactor, scaleFactor);
if (!(ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock))
{
GL11.glRotatef(90f, 1.0f, 0.0f, 0.0F);
}
customRenderItem.doRender(ghostEntityItem, 0, 0, 0, 0, 0);
}
GL11.glPopMatrix();
GL11.glPushMatrix();
if (tileAltar.getStackInSlot(0) != null)
{
float scaleFactor = getGhostItemScaleFactor(tileAltar.getStackInSlot(0));
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorldObj());
ghostEntityItem.hoverStart = 0.0F;
ghostEntityItem.setEntityItemStack(tileAltar.getStackInSlot(0));
float displacement = -0.5F;
if (ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock)
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 0.7F, (float) d2 + 0.5F);
} else
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 10.4f / 16.0f, (float) d2 + 0.5F - 0.0625f * 2f);
}
GL11.glScalef(scaleFactor, scaleFactor, scaleFactor);
if (!(ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock))
{
GL11.glRotatef(90f, 1.0f, 0.0f, 0.0F);
}
customRenderItem.doRender(ghostEntityItem, 0, 0, 0, 0, 0);
}
GL11.glPopMatrix();
ReagentContainerInfo[] info = tileAltar.getContainerInfo(ForgeDirection.UNKNOWN);
if (info.length >= 1 && info[0] != null)
{
ReagentStack reagentStack = info[0].reagent;
int capacity = info[0].capacity;
if (reagentStack != null && reagentStack.reagent != null)
{
Reagent reagent = reagentStack.reagent;
this.renderTankContents(d0, d1, d2, reagent.getColourRed(), reagent.getColourGreen(), reagent.getColourBlue(), 200 * reagentStack.amount / capacity);
}
}
}
}
private void renderTankContents(double x, double y, double z, int colourRed, int colourGreen, int colourBlue, int colourIntensity)
{
GL11.glPushMatrix();
Tessellator tessellator = Tessellator.instance;
this.bindTexture(resourceLocation);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S, 10497.0F);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T, 10497.0F);
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glEnable(GL11.GL_BLEND);
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
GL11.glDepthMask(false);
tessellator.startDrawingQuads();
tessellator.setColorRGBA(colourRed, colourGreen, colourBlue, colourIntensity);
GL11.glTranslated(x + 0.5, y + 0.5, z + 0.5);
tessellator.setBrightness(240);
double x1 = -7d / 16d;
double x2 = 7d / 16d;
double y1 = 1d / 16d;
double y2 = 5d / 16d;
double z1 = -7d / 16d;
double z2 = 7d / 16d;
double resx1 = 0.0d;
double resx2 = 0.0d;
double resy1 = 1.0d;
double resy2 = 1.0d;
tessellator.addVertexWithUV(x1, y1, z1, resx1, resy1);
tessellator.addVertexWithUV(x2, y1, z1, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z1, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z1, resx1, resy2);
tessellator.addVertexWithUV(x1, y1, z1, resx1, resy1);
tessellator.addVertexWithUV(x1, y1, z2, resx2, resy1);
tessellator.addVertexWithUV(x1, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z1, resx1, resy2);
tessellator.addVertexWithUV(x1, y1, z2, resx1, resy1);
tessellator.addVertexWithUV(x2, y1, z2, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z2, resx1, resy2);
tessellator.addVertexWithUV(x2, y1, z1, resx1, resy1);
tessellator.addVertexWithUV(x2, y1, z2, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x2, y2, z1, resx1, resy2);
tessellator.draw();
GL11.glDepthMask(true);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_TEXTURE_2D);
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
GL11.glPopMatrix();
}
private float getGhostItemScaleFactor(ItemStack itemStack)
{
float scaleFactor = 1.5F;
if (itemStack != null)
{
if (itemStack.getItem() instanceof ItemBlock)
{
switch (customRenderItem.getMiniBlockCount(itemStack, (byte) 1))
{
case 1:
return 0.90F * scaleFactor;
case 2:
return 0.90F * scaleFactor;
case 3:
return 0.90F * scaleFactor;
case 4:
return 0.90F * scaleFactor;
case 5:
return 0.80F * scaleFactor;
default:
return 0.90F * scaleFactor;
}
} else
{
switch (customRenderItem.getMiniItemCount(itemStack, (byte) 1))
{
case 1:
return 0.65F * scaleFactor;
case 2:
return 0.65F * scaleFactor;
case 3:
return 0.65F * scaleFactor;
case 4:
return 0.65F * scaleFactor;
default:
return 0.65F * scaleFactor;
}
}
}
return scaleFactor;
}
private float getXDisplacementForSlot(int slot)
{
switch (slot)
{
case 0:
return 0.0f;
case 1:
return -0.375f;
case 2:
return -0.125f;
case 3:
return 0.3125f;
case 4:
return 0.3125f;
case 5:
return -0.125f;
default:
return 0.0f;
}
}
private float getYDisplacementForSlot(int slot)
{
switch (slot)
{
case 0:
return 0.4f;
case 1:
return -0.35f;
case 6:
return 0.4f;
default:
return -0.35f;
}
}
private float getZDisplacementForSlot(int slot)
{
switch (slot)
{
case 0:
return 0.0f;
case 1:
return 0.0f;
case 2:
return 0.375f;
case 3:
return 0.25f;
case 4:
return -0.25f;
case 5:
return -0.375f;
default:
return 0.0f;
}
}
private void translateGhostItemByOrientation(ItemStack ghostItemStack, double x, double y, double z, ForgeDirection forgeDirection)
{
if (ghostItemStack != null)
{
if (ghostItemStack.getItem() instanceof ItemBlock)
{
switch (forgeDirection)
{
case DOWN:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 2.7F, (float) z + 0.5F);
return;
}
case UP:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.25F, (float) z + 0.5F);
return;
}
case NORTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.5F, (float) z + 0.7F);
return;
}
case SOUTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.5F, (float) z + 0.3F);
return;
}
case EAST:
{
GL11.glTranslatef((float) x + 0.3F, (float) y + 0.5F, (float) z + 0.5F);
return;
}
case WEST:
{
GL11.glTranslatef((float) x + 0.70F, (float) y + 0.5F, (float) z + 0.5F);
return;
}
case UNKNOWN:
{
return;
}
default:
{
}
}
} else
{
switch (forgeDirection)
{
case DOWN:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.6F, (float) z + 0.5F);
return;
}
case UP:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.20F, (float) z + 0.5F);
return;
}
case NORTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.4F, (float) z + 0.7F);
return;
}
case SOUTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.4F, (float) z + 0.3F);
return;
}
case EAST:
{
GL11.glTranslatef((float) x + 0.3F, (float) y + 0.4F, (float) z + 0.5F);
return;
}
case WEST:
{
GL11.glTranslatef((float) x + 0.70F, (float) y + 0.4F, (float) z + 0.5F);
return;
}
case UNKNOWN:
{
return;
}
default:
{
}
}
}
}
}
}

View file

@ -1,201 +0,0 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import WayofTime.alchemicalWizardry.common.tileEntity.TEAlchemicalCalcinator;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.WorldRenderer;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentContainerInfo;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentStack;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelAlchemicalCalcinator;
public class RenderAlchemicalCalcinator extends TileEntitySpecialRenderer
{
private final RenderItem customRenderItem;
private ModelAlchemicalCalcinator modelConduit = new ModelAlchemicalCalcinator();
private ResourceLocation resourceLocation = new ResourceLocation("alchemicalwizardry:textures/models/Reagent.png");
public RenderAlchemicalCalcinator()
{
customRenderItem = Minecraft.getMinecraft().getRenderItem();
}
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
{
if (tileEntity instanceof TEAlchemicalCalcinator)
{
TEAlchemicalCalcinator tileAltar = (TEAlchemicalCalcinator) tileEntity;
GL11.glPushMatrix();
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + 1.5F, (float) d2 + 0.5F);
ResourceLocation test = new ResourceLocation("alchemicalwizardry:textures/models/AlchemicalCalcinator.png");
FMLClientHandler.instance().getClient().renderEngine.bindTexture(test);
GL11.glPushMatrix();
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
this.modelConduit.render(null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F);
GL11.glPopMatrix();
GL11.glPopMatrix();
GL11.glPushMatrix();
if (tileAltar.getStackInSlot(1) != null)
{
float scaleFactor = getGhostItemScaleFactor(tileAltar.getStackInSlot(1));
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorld());
ghostEntityItem.hoverStart = 0.0F;
ghostEntityItem.setEntityItemStack(tileAltar.getStackInSlot(1));
float displacement = 0.2F;
if (ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock)
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 0.7F, (float) d2 + 0.5F);
} else
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 10.4f / 16.0f, (float) d2 + 0.5F - 0.0625f * 2f);
}
GL11.glScalef(scaleFactor, scaleFactor, scaleFactor);
if (!(ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock))
{
GL11.glRotatef(90f, 1.0f, 0.0f, 0.0F);
}
customRenderItem.func_175043_b(ghostEntityItem.getEntityItem()); //renderItemModel
}
GL11.glPopMatrix();
GL11.glPushMatrix();
if (tileAltar.getStackInSlot(0) != null)
{
float scaleFactor = getGhostItemScaleFactor(tileAltar.getStackInSlot(0));
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorld());
ghostEntityItem.hoverStart = 0.0F;
ghostEntityItem.setEntityItemStack(tileAltar.getStackInSlot(0));
float displacement = -0.5F;
if (ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock)
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 0.7F, (float) d2 + 0.5F);
} else
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 10.4f / 16.0f, (float) d2 + 0.5F - 0.0625f * 2f);
}
GL11.glScalef(scaleFactor, scaleFactor, scaleFactor);
if (!(ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock))
{
GL11.glRotatef(90f, 1.0f, 0.0f, 0.0F);
}
customRenderItem.func_175043_b(ghostEntityItem.getEntityItem()); //renderItemModel
}
GL11.glPopMatrix();
ReagentContainerInfo[] info = tileAltar.getContainerInfo(EnumFacing.UP);
if (info.length >= 1 && info[0] != null)
{
ReagentStack reagentStack = info[0].reagent;
int capacity = info[0].capacity;
if (reagentStack != null && reagentStack.reagent != null)
{
Reagent reagent = reagentStack.reagent;
this.renderTankContents(d0, d1, d2, reagent.getColourRed(), reagent.getColourGreen(), reagent.getColourBlue(), 200 * reagentStack.amount / capacity);
}
}
}
}
private void renderTankContents(double x, double y, double z, int colourRed, int colourGreen, int colourBlue, int colourIntensity)
{
GL11.glPushMatrix();
Tessellator tessellator = Tessellator.getInstance();
this.bindTexture(resourceLocation);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S, 10497.0F);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T, 10497.0F);
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glEnable(GL11.GL_BLEND);
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
GL11.glDepthMask(false);
WorldRenderer wr = tessellator.getWorldRenderer();
wr.startDrawingQuads();
wr.func_178961_b(colourRed, colourGreen, colourBlue, colourIntensity); //setCoulourRGBA
GL11.glTranslated(x + 0.5, y + 0.5, z + 0.5);
wr.func_178963_b(240); //setBrightness
double x1 = -7d / 16d;
double x2 = 7d / 16d;
double y1 = 1d / 16d;
double y2 = 5d / 16d;
double z1 = -7d / 16d;
double z2 = 7d / 16d;
double resx1 = 0.0d;
double resx2 = 0.0d;
double resy1 = 1.0d;
double resy2 = 1.0d;
wr.addVertexWithUV(x1, y1, z1, resx1, resy1);
wr.addVertexWithUV(x2, y1, z1, resx2, resy1);
wr.addVertexWithUV(x2, y2, z1, resx2, resy2);
wr.addVertexWithUV(x1, y2, z1, resx1, resy2);
wr.addVertexWithUV(x1, y1, z1, resx1, resy1);
wr.addVertexWithUV(x1, y1, z2, resx2, resy1);
wr.addVertexWithUV(x1, y2, z2, resx2, resy2);
wr.addVertexWithUV(x1, y2, z1, resx1, resy2);
wr.addVertexWithUV(x1, y1, z2, resx1, resy1);
wr.addVertexWithUV(x2, y1, z2, resx2, resy1);
wr.addVertexWithUV(x2, y2, z2, resx2, resy2);
wr.addVertexWithUV(x1, y2, z2, resx1, resy2);
wr.addVertexWithUV(x2, y1, z1, resx1, resy1);
wr.addVertexWithUV(x2, y1, z2, resx2, resy1);
wr.addVertexWithUV(x2, y2, z2, resx2, resy2);
wr.addVertexWithUV(x2, y2, z1, resx1, resy2);
tessellator.draw();
GL11.glDepthMask(true);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_TEXTURE_2D);
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
GL11.glPopMatrix();
}
private float getGhostItemScaleFactor(ItemStack itemStack)
{
float scaleFactor = 1.5F;
if (itemStack != null)
{
if (itemStack.getItem() instanceof ItemBlock)
{
return 0.90F * scaleFactor;
} else
{
return 0.65F * scaleFactor;
}
}
return scaleFactor;
}
}

View file

@ -1,80 +0,0 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumFacing;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelBloodAltar;
import WayofTime.alchemicalWizardry.common.tileEntity.TEAltar;
public class RenderAltar extends TileEntitySpecialRenderer
{
private ModelBloodAltar modelBloodAltar = new ModelBloodAltar();
private final RenderItem customRenderItem;
public RenderAltar()
{
customRenderItem = Minecraft.getMinecraft().getRenderItem();
}
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
{
modelBloodAltar.renderBloodAltar((TEAltar) tileEntity, d0, d1, d2);
modelBloodAltar.renderBloodLevel((TEAltar) tileEntity, d0, d1, d2);
if (tileEntity instanceof TEAltar)
{
TEAltar tileAltar = (TEAltar) tileEntity;
GL11.glPushMatrix();
if (tileAltar.getStackInSlot(0) != null)
{
float scaleFactor = getGhostItemScaleFactor(tileAltar.getStackInSlot(0));
float rotationAngle = Minecraft.getMinecraft().gameSettings.fancyGraphics ? (float) (720.0 * (System.currentTimeMillis() & 0x3FFFL) / 0x3FFFL) : 0;
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorld());
ghostEntityItem.hoverStart = 0.0F;
ghostEntityItem.setEntityItemStack(tileAltar.getStackInSlot(0));
float displacement = 0.2F;
if (ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock)
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 0.7F, (float) d2 + 0.5F);
} else
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 0.6F, (float) d2 + 0.5F);
}
GL11.glScalef(scaleFactor, scaleFactor, scaleFactor);
GL11.glRotatef(rotationAngle, 0.0F, 1.0F, 0.0F);
customRenderItem.func_175043_b(ghostEntityItem.getEntityItem()); //renderItemModel
}
GL11.glPopMatrix();
}
}
private float getGhostItemScaleFactor(ItemStack itemStack)
{
float scaleFactor = 1.0F;
if (itemStack != null)
{
if (itemStack.getItem() instanceof ItemBlock)
{
return 0.9f;
} else
{
return 0.65f;
}
}
return scaleFactor;
}
}

View file

@ -1,166 +0,0 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import WayofTime.alchemicalWizardry.common.tileEntity.TEChemistrySet;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelChemistrySet;
public class RenderChemistrySet extends TileEntitySpecialRenderer
{
private ModelChemistrySet modelChemistrySet = new ModelChemistrySet();
private final RenderItem customRenderItem;
public RenderChemistrySet()
{
customRenderItem = Minecraft.getMinecraft().getRenderItem();
}
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int a)
{
if (tileEntity instanceof TEChemistrySet)
{
TEChemistrySet tileAltar = (TEChemistrySet) tileEntity;
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glPushMatrix();
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + 1.5F, (float) d2 + 0.5F);
ResourceLocation test = new ResourceLocation("alchemicalwizardry:textures/models/WritingTable.png");
FMLClientHandler.instance().getClient().renderEngine.bindTexture(test);
GL11.glPushMatrix();
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
this.modelChemistrySet.render(null, 0.0F, 0.0F, -0.1F, 0.0F, 0.0F, 0.0625F);
GL11.glPopMatrix();
GL11.glPopMatrix();
for (int i = 1; i <= 6; i++)
{
GL11.glPushMatrix();
GL11.glEnable(GL11.GL_LIGHTING);
if (tileAltar.getStackInSlot(i) != null)
{
float scaleFactor = getGhostItemScaleFactor(tileAltar.getStackInSlot(i));
float rotationAngle = Minecraft.getMinecraft().gameSettings.fancyGraphics ? (float) (720.0 * (System.currentTimeMillis() & 0x3FFFL) / 0x3FFFL) : 0;
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorld());
ghostEntityItem.hoverStart = 0.0F;
ghostEntityItem.setEntityItemStack(tileAltar.getStackInSlot(i));
float displacementX = getXDisplacementForSlot(i);
float displacementY = getYDisplacementForSlot(i);
float displacementZ = getZDisplacementForSlot(i);
if (ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock)
{
GL11.glTranslatef((float) d0 + 0.5F + displacementX, (float) d1 + displacementY + 0.7F, (float) d2 + 0.5F + displacementZ);
} else
{
GL11.glTranslatef((float) d0 + 0.5F + displacementX, (float) d1 + displacementY + 0.6F, (float) d2 + 0.5F + displacementZ);
}
GL11.glScalef(scaleFactor, scaleFactor, scaleFactor);
GL11.glRotatef(rotationAngle, 0.0F, 1.0F, 0.0F);
customRenderItem.func_175043_b(ghostEntityItem.getEntityItem()); //renderItemModel
}
GL11.glPopMatrix();
}
}
}
private float getGhostItemScaleFactor(ItemStack itemStack)
{
float scaleFactor = 0.8F;
if (itemStack != null)
{
if (itemStack.getItem() instanceof ItemBlock)
{
return 0.9f * scaleFactor;
} else
{
return 0.65F * scaleFactor;
}
}
return scaleFactor;
}
private float getXDisplacementForSlot(int slot)
{
switch (slot)
{
case 0:
return 0.0f;
case 1:
return -0.375f;
case 2:
return -0.125f;
case 3:
return 0.3125f;
case 4:
return 0.3125f;
case 5:
return -0.125f;
default:
return 0.0f;
}
}
private float getYDisplacementForSlot(int slot)
{
switch (slot)
{
case 0:
return 0.4f;
case 1:
return -0.35f;
case 6:
return 0.4f;
default:
return -0.35f;
}
}
private float getZDisplacementForSlot(int slot)
{
switch (slot)
{
case 0:
return 0.0f;
case 1:
return 0.0f;
case 2:
return 0.375f;
case 3:
return 0.25f;
case 4:
return -0.25f;
case 5:
return -0.375f;
default:
return 0.0f;
}
}
}

View file

@ -1,21 +1,20 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelConduit;
import WayofTime.alchemicalWizardry.common.tileEntity.TEConduit;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.entity.Entity;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
public class RenderConduit extends TileEntitySpecialRenderer
{
private ModelConduit modelConduit = new ModelConduit();
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TEConduit)
{
@ -26,7 +25,7 @@ public class RenderConduit extends TileEntitySpecialRenderer
FMLClientHandler.instance().getClient().renderEngine.bindTexture(test);
GL11.glPushMatrix();
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
this.modelConduit.render(null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, tileConduit.getInputDirection(), tileConduit.getOutputDirection());
this.modelConduit.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, tileConduit.getInputDirection(), tileConduit.getOutputDirection());
GL11.glPopMatrix();
GL11.glPopMatrix();
}

View file

@ -1,20 +1,18 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.WorldRenderer;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentContainerInfo;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentStack;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelCrystalBelljar;
import WayofTime.alchemicalWizardry.common.tileEntity.TEBelljar;
import WayofTime.alchemicalWizardry.common.tileEntity.TEBellJar;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
public class RenderCrystalBelljar extends TileEntitySpecialRenderer
{
@ -22,12 +20,13 @@ public class RenderCrystalBelljar extends TileEntitySpecialRenderer
private ResourceLocation resourceLocation = new ResourceLocation("alchemicalwizardry:textures/models/Reagent.png");
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TEBelljar)
if (tileEntity instanceof TEBellJar)
{
TEBelljar tileAltar = (TEBelljar) tileEntity;
TEBellJar tileAltar = (TEBellJar) tileEntity;
GL11.glPushMatrix();
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + 1.5F, (float) d2 + 0.5F);
ResourceLocation test = new ResourceLocation("alchemicalwizardry:textures/models/CrystalBelljar.png");
@ -38,7 +37,7 @@ public class RenderCrystalBelljar extends TileEntitySpecialRenderer
GL11.glPopMatrix();
GL11.glPopMatrix();
ReagentContainerInfo[] info = tileAltar.getContainerInfo(EnumFacing.UP);
ReagentContainerInfo[] info = tileAltar.getContainerInfo(ForgeDirection.UNKNOWN);
if (info.length >= 1 && info[0] != null)
{
ReagentStack reagentStack = info[0].reagent;
@ -55,20 +54,22 @@ public class RenderCrystalBelljar extends TileEntitySpecialRenderer
private void renderTankContents(double x, double y, double z, int colourRed, int colourGreen, int colourBlue, int colourIntensity)
{
GL11.glPushMatrix();
Tessellator tessellator = Tessellator.getInstance();
float f1 = 1.0f;
Tessellator tessellator = Tessellator.instance;
this.bindTexture(resourceLocation);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S, 10497.0F);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T, 10497.0F);
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_CULL_FACE);
float f2 = 0;
float f3 = -f2 * 0.2F - (float) MathHelper.floor_float(-f2 * 0.1F);
GL11.glEnable(GL11.GL_BLEND);
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
GL11.glDepthMask(false);
WorldRenderer wr = tessellator.getWorldRenderer();
wr.startDrawingQuads();
wr.func_178961_b(colourRed, colourGreen, colourBlue, colourIntensity); //setColourRGBA
tessellator.startDrawingQuads();
tessellator.setColorRGBA(colourRed, colourGreen, colourBlue, colourIntensity);
GL11.glTranslated(x + 0.5, y + 0.5, z + 0.5);
wr.func_178963_b(240); //setBrightness
tessellator.setBrightness(240);
double x1 = -4d / 16d;
double x2 = 4d / 16d;
@ -82,26 +83,26 @@ public class RenderCrystalBelljar extends TileEntitySpecialRenderer
double resy1 = 1.0d;
double resy2 = 1.0d;
wr.addVertexWithUV(x1, y1, z1, resx1, resy1);
wr.addVertexWithUV(x2, y1, z1, resx2, resy1);
wr.addVertexWithUV(x2, y2, z1, resx2, resy2);
wr.addVertexWithUV(x1, y2, z1, resx1, resy2);
wr.addVertexWithUV(x1, y1, z1, resx1, resy1);
wr.addVertexWithUV(x1, y1, z2, resx2, resy1);
wr.addVertexWithUV(x1, y2, z2, resx2, resy2);
wr.addVertexWithUV(x1, y2, z1, resx1, resy2);
wr.addVertexWithUV(x1, y1, z2, resx1, resy1);
wr.addVertexWithUV(x2, y1, z2, resx2, resy1);
wr.addVertexWithUV(x2, y2, z2, resx2, resy2);
wr.addVertexWithUV(x1, y2, z2, resx1, resy2);
wr.addVertexWithUV(x2, y1, z1, resx1, resy1);
wr.addVertexWithUV(x2, y1, z2, resx2, resy1);
wr.addVertexWithUV(x2, y2, z2, resx2, resy2);
wr.addVertexWithUV(x2, y2, z1, resx1, resy2);
wr.addVertexWithUV(x1, y2, z1, resx1, resy1);
wr.addVertexWithUV(x2, y2, z1, resx2, resy1);
wr.addVertexWithUV(x2, y2, z2, resx2, resy2);
wr.addVertexWithUV(x1, y2, z2, resx1, resy2);
tessellator.addVertexWithUV(x1, y1, z1, resx1, resy1);
tessellator.addVertexWithUV(x2, y1, z1, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z1, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z1, resx1, resy2);
tessellator.addVertexWithUV(x1, y1, z1, resx1, resy1);
tessellator.addVertexWithUV(x1, y1, z2, resx2, resy1);
tessellator.addVertexWithUV(x1, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z1, resx1, resy2);
tessellator.addVertexWithUV(x1, y1, z2, resx1, resy1);
tessellator.addVertexWithUV(x2, y1, z2, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z2, resx1, resy2);
tessellator.addVertexWithUV(x2, y1, z1, resx1, resy1);
tessellator.addVertexWithUV(x2, y1, z2, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x2, y2, z1, resx1, resy2);
tessellator.addVertexWithUV(x1, y2, z1, resx1, resy1);
tessellator.addVertexWithUV(x2, y2, z1, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z2, resx1, resy2);
tessellator.draw();
GL11.glDepthMask(true);

View file

@ -1,15 +1,15 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import WayofTime.alchemicalWizardry.api.renderer.MRSRenderer;
import WayofTime.alchemicalWizardry.api.rituals.Rituals;
import WayofTime.alchemicalWizardry.common.tileEntity.TEMasterStone;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
public class RenderMasterStone extends TileEntitySpecialRenderer
{
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TEMasterStone)
{

View file

@ -1,20 +1,19 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.Minecraft;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelPedestal;
import WayofTime.alchemicalWizardry.common.tileEntity.TEPedestal;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.client.FMLClientHandler;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelPedestal;
import WayofTime.alchemicalWizardry.common.tileEntity.TEPedestal;
public class RenderPedestal extends TileEntitySpecialRenderer
{
private ModelPedestal modelPedestal = new ModelPedestal();
@ -22,11 +21,19 @@ public class RenderPedestal extends TileEntitySpecialRenderer
public RenderPedestal()
{
customRenderItem = Minecraft.getMinecraft().getRenderItem();
customRenderItem = new RenderItem()
{
@Override
public boolean shouldBob()
{
return false;
}
};
customRenderItem.setRenderManager(RenderManager.instance);
}
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TEPedestal)
{
@ -46,7 +53,7 @@ public class RenderPedestal extends TileEntitySpecialRenderer
{
float scaleFactor = getGhostItemScaleFactor(tileAltar.getStackInSlot(0));
float rotationAngle = (float) (720.0 * (System.currentTimeMillis() & 0x3FFFL) / 0x3FFFL);
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorld());
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorldObj());
ghostEntityItem.hoverStart = 0.0F;
ghostEntityItem.setEntityItemStack(tileAltar.getStackInSlot(0));
float displacement = 0.2F;
@ -60,7 +67,7 @@ public class RenderPedestal extends TileEntitySpecialRenderer
}
GL11.glScalef(scaleFactor, scaleFactor, scaleFactor);
GL11.glRotatef(rotationAngle, 0.0F, 1.0F, 0.0F);
customRenderItem.func_175043_b(ghostEntityItem.getEntityItem()); //renderItemModel
customRenderItem.doRender(ghostEntityItem, 0, 0, 0, 0, 0);
}
GL11.glPopMatrix();
@ -85,13 +92,156 @@ public class RenderPedestal extends TileEntitySpecialRenderer
{
if (itemStack.getItem() instanceof ItemBlock)
{
return 0.9f;
switch (customRenderItem.getMiniBlockCount(itemStack, (byte) 1))
{
case 1:
return 0.90F;
case 2:
return 0.90F;
case 3:
return 0.90F;
case 4:
return 0.90F;
case 5:
return 0.80F;
default:
return 0.90F;
}
} else
{
return 0.65f;
switch (customRenderItem.getMiniItemCount(itemStack, (byte) 1))
{
case 1:
return 0.65F;
case 2:
return 0.65F;
case 3:
return 0.65F;
case 4:
return 0.65F;
default:
return 0.65F;
}
}
}
return scaleFactor;
}
private void translateGhostItemByOrientation(ItemStack ghostItemStack, double x, double y, double z, ForgeDirection forgeDirection)
{
if (ghostItemStack != null)
{
if (ghostItemStack.getItem() instanceof ItemBlock)
{
switch (forgeDirection)
{
case DOWN:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 2.7F, (float) z + 0.5F);
return;
}
case UP:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.25F, (float) z + 0.5F);
return;
}
case NORTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.5F, (float) z + 0.7F);
return;
}
case SOUTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.5F, (float) z + 0.3F);
return;
}
case EAST:
{
GL11.glTranslatef((float) x + 0.3F, (float) y + 0.5F, (float) z + 0.5F);
return;
}
case WEST:
{
GL11.glTranslatef((float) x + 0.70F, (float) y + 0.5F, (float) z + 0.5F);
return;
}
case UNKNOWN:
{
return;
}
default:
{
}
}
} else
{
switch (forgeDirection)
{
case DOWN:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.6F, (float) z + 0.5F);
return;
}
case UP:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.20F, (float) z + 0.5F);
return;
}
case NORTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.4F, (float) z + 0.7F);
return;
}
case SOUTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.4F, (float) z + 0.3F);
return;
}
case EAST:
{
GL11.glTranslatef((float) x + 0.3F, (float) y + 0.4F, (float) z + 0.5F);
return;
}
case WEST:
{
GL11.glTranslatef((float) x + 0.70F, (float) y + 0.4F, (float) z + 0.5F);
return;
}
case UNKNOWN:
{
return;
}
default:
{
}
}
}
}
}
}

View file

@ -1,20 +1,19 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.Minecraft;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelPlinth;
import WayofTime.alchemicalWizardry.common.tileEntity.TEPlinth;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.client.FMLClientHandler;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelPlinth;
import WayofTime.alchemicalWizardry.common.tileEntity.TEPlinth;
public class RenderPlinth extends TileEntitySpecialRenderer
{
private ModelPlinth modelPlinth = new ModelPlinth();
@ -22,11 +21,19 @@ public class RenderPlinth extends TileEntitySpecialRenderer
public RenderPlinth()
{
customRenderItem = Minecraft.getMinecraft().getRenderItem();
customRenderItem = new RenderItem()
{
@Override
public boolean shouldBob()
{
return false;
}
};
customRenderItem.setRenderManager(RenderManager.instance);
}
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TEPlinth)
{
@ -45,7 +52,7 @@ public class RenderPlinth extends TileEntitySpecialRenderer
if (tileAltar.getStackInSlot(0) != null)
{
float scaleFactor = getGhostItemScaleFactor(tileAltar.getStackInSlot(0));
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorld());
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorldObj());
ghostEntityItem.hoverStart = 0.0F;
ghostEntityItem.setEntityItemStack(tileAltar.getStackInSlot(0));
float displacement = 0.2F;
@ -64,7 +71,7 @@ public class RenderPlinth extends TileEntitySpecialRenderer
GL11.glRotatef(90f, 1.0f, 0.0f, 0.0F);
}
customRenderItem.func_175043_b(ghostEntityItem.getEntityItem()); //renderItemModel
customRenderItem.doRender(ghostEntityItem, 0, 0, 0, 0, 0);
}
GL11.glPopMatrix();
@ -79,13 +86,156 @@ public class RenderPlinth extends TileEntitySpecialRenderer
{
if (itemStack.getItem() instanceof ItemBlock)
{
return 0.9f * scaleFactor;
switch (customRenderItem.getMiniBlockCount(itemStack, (byte) 1))
{
case 1:
return 0.90F * scaleFactor / 2;
case 2:
return 0.90F * scaleFactor / 2;
case 3:
return 0.90F * scaleFactor / 2;
case 4:
return 0.90F * scaleFactor / 2;
case 5:
return 0.80F * scaleFactor / 2;
default:
return 0.90F * scaleFactor / 2;
}
} else
{
return 0.65f * scaleFactor;
switch (customRenderItem.getMiniItemCount(itemStack, (byte) 1))
{
case 1:
return 0.65F * scaleFactor;
case 2:
return 0.65F * scaleFactor;
case 3:
return 0.65F * scaleFactor;
case 4:
return 0.65F * scaleFactor;
default:
return 0.65F * scaleFactor;
}
}
}
return scaleFactor;
}
private void translateGhostItemByOrientation(ItemStack ghostItemStack, double x, double y, double z, ForgeDirection forgeDirection)
{
if (ghostItemStack != null)
{
if (ghostItemStack.getItem() instanceof ItemBlock)
{
switch (forgeDirection)
{
case DOWN:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 2.7F, (float) z + 0.5F);
return;
}
case UP:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.25F, (float) z + 0.5F);
return;
}
case NORTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.5F, (float) z + 0.7F);
return;
}
case SOUTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.5F, (float) z + 0.3F);
return;
}
case EAST:
{
GL11.glTranslatef((float) x + 0.3F, (float) y + 0.5F, (float) z + 0.5F);
return;
}
case WEST:
{
GL11.glTranslatef((float) x + 0.70F, (float) y + 0.5F, (float) z + 0.5F);
return;
}
case UNKNOWN:
{
return;
}
default:
{
}
}
} else
{
switch (forgeDirection)
{
case DOWN:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.6F, (float) z + 0.5F);
return;
}
case UP:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.20F, (float) z + 0.5F);
return;
}
case NORTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.4F, (float) z + 0.7F);
return;
}
case SOUTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.4F, (float) z + 0.3F);
return;
}
case EAST:
{
GL11.glTranslatef((float) x + 0.3F, (float) y + 0.4F, (float) z + 0.5F);
return;
}
case WEST:
{
GL11.glTranslatef((float) x + 0.70F, (float) y + 0.4F, (float) z + 0.5F);
return;
}
case UNKNOWN:
{
return;
}
default:
{
}
}
}
}
}
}

View file

@ -1,34 +1,29 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.WorldRenderer;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.BlockPos;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.api.Int3;
import WayofTime.alchemicalWizardry.common.tileEntity.TEReagentConduit;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
public class RenderReagentConduit extends TileEntitySpecialRenderer
{
private static final ResourceLocation field_110629_a = new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png");
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TEReagentConduit)
{
int renderCount = ((TEReagentConduit) tileEntity).renderCount;
BlockPos pos = tileEntity.getPos();
float key1 = (pos.getX() * 54f - pos.getY() * 38.72f + pos.getZ() * 10.432f);
float key2 = (pos.getX() * 21.43f - pos.getY() * 9.96f + pos.getZ() * 12.8f);
float key1 = (tileEntity.xCoord * 54f - tileEntity.yCoord * 38.72f + tileEntity.zCoord * 10.432f);
float key2 = (tileEntity.xCoord * 21.43f - tileEntity.yCoord * 9.96f + tileEntity.zCoord * 12.8f);
Int3 colourMap = ((TEReagentConduit) tileEntity).getColour();
GL11.glPushMatrix();
Tessellator tessellator = Tessellator.getInstance();
WorldRenderer wr = tessellator.getWorldRenderer();
Tessellator tessellator = Tessellator.instance;
this.bindTexture(field_110629_a);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S, 10497.0F);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T, 10497.0F);
@ -37,17 +32,17 @@ public class RenderReagentConduit extends TileEntitySpecialRenderer
GL11.glEnable(GL11.GL_BLEND);
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
GL11.glDepthMask(false);
wr.startDrawingQuads();
wr.func_178961_b(colourMap.xCoord, colourMap.yCoord, colourMap.zCoord, 200);
tessellator.startDrawingQuads();
tessellator.setColorRGBA(colourMap.xCoord, colourMap.yCoord, colourMap.zCoord, 200);
GL11.glTranslated(d0 + 0.5, d1 + 0.5, d2 + 0.5);
GL11.glRotatef(tileEntity.getWorld().getWorldTime() / 3.0f, 0F, 1F, 0F); //Rotate on planar axis
GL11.glRotatef(tileEntity.getWorldObj().getWorldTime() / 3.0f, 0F, 1F, 0F); //Rotate on planar axis
GL11.glRotatef(renderCount + key1, 0F, 0F, 1F); //Rotate vertical axis
GL11.glRotatef(renderCount * 2f + key2, 1F, 0F, 0F); //Rotate cylindrically
wr.func_178963_b(240);
wr.addVertexWithUV(-0.5d, 0, -0.5d, 0.0d, 0.0d);
wr.addVertexWithUV(0.5d, 0, -0.5d, 1.0d, 0.0d);
wr.addVertexWithUV(0.5d, 0, 0.5d, 1.0d, 1.0d);
wr.addVertexWithUV(-0.5d, 0, 0.5d, 0.0d, 1.0d);
tessellator.setBrightness(240);
tessellator.addVertexWithUV(-0.5d, 0, -0.5d, 0.0d, 0.0d);
tessellator.addVertexWithUV(0.5d, 0, -0.5d, 1.0d, 0.0d);
tessellator.addVertexWithUV(0.5d, 0, 0.5d, 1.0d, 1.0d);
tessellator.addVertexWithUV(-0.5d, 0, 0.5d, 0.0d, 1.0d);
tessellator.draw();

View file

@ -1,21 +1,19 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelSpellEffectBlock;
import WayofTime.alchemicalWizardry.common.tileEntity.TESpellEffectBlock;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
public class RenderSpellEffectBlock extends TileEntitySpecialRenderer
{
private ModelSpellEffectBlock modelSpellEffectBlock = new ModelSpellEffectBlock();
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TESpellEffectBlock)
{
@ -23,7 +21,7 @@ public class RenderSpellEffectBlock extends TileEntitySpecialRenderer
GL11.glPushMatrix();
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + 1.5F, (float) d2 + 0.5F);
ResourceLocation test;
int meta = tileEntity.getBlockMetadata();
int meta = tileEntity.getWorldObj().getBlockMetadata(tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord);
String resource = tileSpellBlock.getResourceLocationForMeta(meta);
test = new ResourceLocation(resource);

View file

@ -1,21 +1,19 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelSpellEnhancementBlock;
import WayofTime.alchemicalWizardry.common.tileEntity.TESpellEnhancementBlock;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
public class RenderSpellEnhancementBlock extends TileEntitySpecialRenderer
{
private ModelSpellEnhancementBlock modelSpellEnhancementBlock = new ModelSpellEnhancementBlock();
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TESpellEnhancementBlock)
{
@ -23,7 +21,7 @@ public class RenderSpellEnhancementBlock extends TileEntitySpecialRenderer
GL11.glPushMatrix();
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + 1.5F, (float) d2 + 0.5F);
ResourceLocation test;
int meta = tileEntity.getBlockMetadata();
int meta = tileEntity.getWorldObj().getBlockMetadata(tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord);
String resource = tileSpellBlock.getResourceLocationForMeta(meta);
test = new ResourceLocation(resource);

View file

@ -1,21 +1,19 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelSpellModifierBlock;
import WayofTime.alchemicalWizardry.common.tileEntity.TESpellModifierBlock;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
public class RenderSpellModifierBlock extends TileEntitySpecialRenderer
{
private ModelSpellModifierBlock modelSpellModifierBlock = new ModelSpellModifierBlock();
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TESpellModifierBlock)
{
@ -23,7 +21,7 @@ public class RenderSpellModifierBlock extends TileEntitySpecialRenderer
GL11.glPushMatrix();
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + 1.5F, (float) d2 + 0.5F);
ResourceLocation test;
int meta = tileEntity.getBlockMetadata();
int meta = tileEntity.getWorldObj().getBlockMetadata(tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord);
String resource = tileSpellBlock.getResourceLocationForMeta(meta);
test = new ResourceLocation(resource);

View file

@ -1,21 +1,19 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelSpellParadigmBlock;
import WayofTime.alchemicalWizardry.common.tileEntity.TESpellParadigmBlock;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
public class RenderSpellParadigmBlock extends TileEntitySpecialRenderer
{
private ModelSpellParadigmBlock modelSpellParadigmBlock = new ModelSpellParadigmBlock();
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f, int i)
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TESpellParadigmBlock)
{
@ -23,7 +21,7 @@ public class RenderSpellParadigmBlock extends TileEntitySpecialRenderer
GL11.glPushMatrix();
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + 1.5F, (float) d2 + 0.5F);
ResourceLocation test;
int meta = tileEntity.getBlockMetadata();
int meta = tileEntity.getWorldObj().getBlockMetadata(tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord);
String resource = tileSpellBlock.getResourceLocationForMeta(meta);
test = new ResourceLocation(resource);

View file

@ -0,0 +1,318 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelWritingTable;
import WayofTime.alchemicalWizardry.common.tileEntity.TEWritingTable;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
public class RenderWritingTable extends TileEntitySpecialRenderer
{
private ModelWritingTable modelWritingTable = new ModelWritingTable();
private final RenderItem customRenderItem;
public RenderWritingTable()
{
customRenderItem = new RenderItem()
{
@Override
public boolean shouldBob()
{
return false;
}
};
customRenderItem.setRenderManager(RenderManager.instance);
}
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
if (tileEntity instanceof TEWritingTable)
{
TEWritingTable tileAltar = (TEWritingTable) tileEntity;
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glPushMatrix();
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + 1.5F, (float) d2 + 0.5F);
ResourceLocation test = new ResourceLocation("alchemicalwizardry:textures/models/WritingTable.png");
FMLClientHandler.instance().getClient().renderEngine.bindTexture(test);
GL11.glPushMatrix();
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
this.modelWritingTable.render(null, 0.0F, 0.0F, -0.1F, 0.0F, 0.0F, 0.0625F);
GL11.glPopMatrix();
GL11.glPopMatrix();
for (int i = 1; i <= 6; i++)
{
GL11.glPushMatrix();
GL11.glEnable(GL11.GL_LIGHTING);
if (tileAltar.getStackInSlot(i) != null)
{
float scaleFactor = getGhostItemScaleFactor(tileAltar.getStackInSlot(i));
float rotationAngle = Minecraft.getMinecraft().gameSettings.fancyGraphics ? (float) (720.0 * (System.currentTimeMillis() & 0x3FFFL) / 0x3FFFL) : 0;
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorldObj());
ghostEntityItem.hoverStart = 0.0F;
ghostEntityItem.setEntityItemStack(tileAltar.getStackInSlot(i));
float displacementX = getXDisplacementForSlot(i);
float displacementY = getYDisplacementForSlot(i);
float displacementZ = getZDisplacementForSlot(i);
if (ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock)
{
GL11.glTranslatef((float) d0 + 0.5F + displacementX, (float) d1 + displacementY + 0.7F, (float) d2 + 0.5F + displacementZ);
} else
{
GL11.glTranslatef((float) d0 + 0.5F + displacementX, (float) d1 + displacementY + 0.6F, (float) d2 + 0.5F + displacementZ);
}
GL11.glScalef(scaleFactor, scaleFactor, scaleFactor);
GL11.glRotatef(rotationAngle, 0.0F, 1.0F, 0.0F);
customRenderItem.doRender(ghostEntityItem, 0, 0, 0, 0, 0);
}
GL11.glPopMatrix();
}
}
}
private float getGhostItemScaleFactor(ItemStack itemStack)
{
float scaleFactor = 0.8F;
if (itemStack != null)
{
if (itemStack.getItem() instanceof ItemBlock)
{
switch (customRenderItem.getMiniBlockCount(itemStack, (byte) 1))
{
case 1:
return 0.90F * scaleFactor;
case 2:
return 0.90F * scaleFactor;
case 3:
return 0.90F * scaleFactor;
case 4:
return 0.90F * scaleFactor;
case 5:
return 0.80F * scaleFactor;
default:
return 0.90F * scaleFactor;
}
} else
{
switch (customRenderItem.getMiniItemCount(itemStack, (byte) 1))
{
case 1:
return 0.65F * scaleFactor;
case 2:
return 0.65F * scaleFactor;
case 3:
return 0.65F * scaleFactor;
case 4:
return 0.65F * scaleFactor;
default:
return 0.65F * scaleFactor;
}
}
}
return scaleFactor;
}
private float getXDisplacementForSlot(int slot)
{
switch (slot)
{
case 0:
return 0.0f;
case 1:
return -0.375f;
case 2:
return -0.125f;
case 3:
return 0.3125f;
case 4:
return 0.3125f;
case 5:
return -0.125f;
default:
return 0.0f;
}
}
private float getYDisplacementForSlot(int slot)
{
switch (slot)
{
case 0:
return 0.4f;
case 1:
return -0.35f;
case 6:
return 0.4f;
default:
return -0.35f;
}
}
private float getZDisplacementForSlot(int slot)
{
switch (slot)
{
case 0:
return 0.0f;
case 1:
return 0.0f;
case 2:
return 0.375f;
case 3:
return 0.25f;
case 4:
return -0.25f;
case 5:
return -0.375f;
default:
return 0.0f;
}
}
private void translateGhostItemByOrientation(ItemStack ghostItemStack, double x, double y, double z, ForgeDirection forgeDirection)
{
if (ghostItemStack != null)
{
if (ghostItemStack.getItem() instanceof ItemBlock)
{
switch (forgeDirection)
{
case DOWN:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 2.7F, (float) z + 0.5F);
return;
}
case UP:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.25F, (float) z + 0.5F);
return;
}
case NORTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.5F, (float) z + 0.7F);
return;
}
case SOUTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.5F, (float) z + 0.3F);
return;
}
case EAST:
{
GL11.glTranslatef((float) x + 0.3F, (float) y + 0.5F, (float) z + 0.5F);
return;
}
case WEST:
{
GL11.glTranslatef((float) x + 0.70F, (float) y + 0.5F, (float) z + 0.5F);
return;
}
case UNKNOWN:
{
return;
}
default:
{
}
}
} else
{
switch (forgeDirection)
{
case DOWN:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.6F, (float) z + 0.5F);
return;
}
case UP:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.20F, (float) z + 0.5F);
return;
}
case NORTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.4F, (float) z + 0.7F);
return;
}
case SOUTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.4F, (float) z + 0.3F);
return;
}
case EAST:
{
GL11.glTranslatef((float) x + 0.3F, (float) y + 0.4F, (float) z + 0.5F);
return;
}
case WEST:
{
GL11.glTranslatef((float) x + 0.70F, (float) y + 0.4F, (float) z + 0.5F);
return;
}
case UNKNOWN:
{
return;
}
default:
{
}
}
}
}
}
}

View file

@ -0,0 +1,232 @@
package WayofTime.alchemicalWizardry.common.renderer.block;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelBloodAltar;
import WayofTime.alchemicalWizardry.common.tileEntity.TEAltar;
public class TEAltarRenderer extends TileEntitySpecialRenderer
{
private ModelBloodAltar modelBloodAltar = new ModelBloodAltar();
private final RenderItem customRenderItem;
public TEAltarRenderer()
{
customRenderItem = new RenderItem()
{
@Override
public boolean shouldBob()
{
return false;
}
};
customRenderItem.setRenderManager(RenderManager.instance);
}
@Override
public void renderTileEntityAt(TileEntity tileEntity, double d0, double d1, double d2, float f)
{
modelBloodAltar.renderBloodAltar((TEAltar) tileEntity, d0, d1, d2);
modelBloodAltar.renderBloodLevel((TEAltar) tileEntity, d0, d1, d2);
if (tileEntity instanceof TEAltar)
{
TEAltar tileAltar = (TEAltar) tileEntity;
GL11.glPushMatrix();
if (tileAltar.getStackInSlot(0) != null)
{
float scaleFactor = getGhostItemScaleFactor(tileAltar.getStackInSlot(0));
float rotationAngle = Minecraft.getMinecraft().gameSettings.fancyGraphics ? (float) (720.0 * (System.currentTimeMillis() & 0x3FFFL) / 0x3FFFL) : 0;
EntityItem ghostEntityItem = new EntityItem(tileAltar.getWorldObj());
ghostEntityItem.hoverStart = 0.0F;
ghostEntityItem.setEntityItemStack(tileAltar.getStackInSlot(0));
float displacement = 0.2F;
if (ghostEntityItem.getEntityItem().getItem() instanceof ItemBlock)
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 0.7F, (float) d2 + 0.5F);
} else
{
GL11.glTranslatef((float) d0 + 0.5F, (float) d1 + displacement + 0.6F, (float) d2 + 0.5F);
}
GL11.glScalef(scaleFactor, scaleFactor, scaleFactor);
GL11.glRotatef(rotationAngle, 0.0F, 1.0F, 0.0F);
customRenderItem.doRender(ghostEntityItem, 0, 0, 0, 0, 0);
}
GL11.glPopMatrix();
}
}
private float getGhostItemScaleFactor(ItemStack itemStack)
{
float scaleFactor = 1.0F;
if (itemStack != null)
{
if (itemStack.getItem() instanceof ItemBlock)
{
switch (customRenderItem.getMiniBlockCount(itemStack, (byte) 1))
{
case 1:
return 0.90F;
case 2:
return 0.90F;
case 3:
return 0.90F;
case 4:
return 0.90F;
case 5:
return 0.80F;
default:
return 0.90F;
}
} else
{
switch (customRenderItem.getMiniItemCount(itemStack, (byte) 1))
{
case 1:
return 0.65F;
case 2:
return 0.65F;
case 3:
return 0.65F;
case 4:
return 0.65F;
default:
return 0.65F;
}
}
}
return scaleFactor;
}
private void translateGhostItemByOrientation(ItemStack ghostItemStack, double x, double y, double z, ForgeDirection forgeDirection)
{
if (ghostItemStack != null)
{
if (ghostItemStack.getItem() instanceof ItemBlock)
{
switch (forgeDirection)
{
case DOWN:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 2.7F, (float) z + 0.5F);
return;
}
case UP:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.25F, (float) z + 0.5F);
return;
}
case NORTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.5F, (float) z + 0.7F);
return;
}
case SOUTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.5F, (float) z + 0.3F);
return;
}
case EAST:
{
GL11.glTranslatef((float) x + 0.3F, (float) y + 0.5F, (float) z + 0.5F);
return;
}
case WEST:
{
GL11.glTranslatef((float) x + 0.70F, (float) y + 0.5F, (float) z + 0.5F);
return;
}
case UNKNOWN:
{
return;
}
default:
{
return;
}
}
} else
{
switch (forgeDirection)
{
case DOWN:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.6F, (float) z + 0.5F);
return;
}
case UP:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.20F, (float) z + 0.5F);
return;
}
case NORTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.4F, (float) z + 0.7F);
return;
}
case SOUTH:
{
GL11.glTranslatef((float) x + 0.5F, (float) y + 0.4F, (float) z + 0.3F);
return;
}
case EAST:
{
GL11.glTranslatef((float) x + 0.3F, (float) y + 0.4F, (float) z + 0.5F);
return;
}
case WEST:
{
GL11.glTranslatef((float) x + 0.70F, (float) y + 0.4F, (float) z + 0.5F);
return;
}
case UNKNOWN:
{
return;
}
default:
{
return;
}
}
}
}
}
}

View file

@ -1,19 +1,21 @@
package WayofTime.alchemicalWizardry.common.renderer.block.itemRender;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelAlchemicalCalcinator;
import cpw.mods.fml.client.FMLClientHandler;
public class TEAlchemicalCalcinatorItemRenderer implements IItemRenderer
{
private ModelAlchemicalCalcinator modelConduit = new ModelAlchemicalCalcinator();
private void renderConduitItem(ItemStack item, float translateX, float translateY, float translateZ)
private void renderConduitItem(RenderBlocks render, ItemStack item, float translateX, float translateY, float translateZ)
{
GL11.glPushMatrix();
GL11.glTranslatef(translateX + 0.5F, translateY + 1.5F, translateZ + 0.5F);
@ -26,6 +28,7 @@ public class TEAlchemicalCalcinatorItemRenderer implements IItemRenderer
GL11.glPopMatrix();
}
/**
* IItemRenderer implementation *
*/
@ -61,16 +64,16 @@ public class TEAlchemicalCalcinatorItemRenderer implements IItemRenderer
switch (type)
{
case ENTITY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
case EQUIPPED:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case EQUIPPED_FIRST_PERSON:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case INVENTORY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
default:
}

View file

@ -1,14 +1,13 @@
package WayofTime.alchemicalWizardry.common.renderer.block.itemRender;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelBloodAltar;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelBloodAltar;
public class TEAltarItemRenderer implements IItemRenderer
{
private ModelBloodAltar modelBloodAltar;
@ -37,16 +36,16 @@ public class TEAltarItemRenderer implements IItemRenderer
switch (type)
{
case ENTITY:
renderBloodAltar(item, 0, 0, 0, scale);
renderBloodAltar((RenderBlocks) data[0], item, 0, 0, 0, scale);
break;
case EQUIPPED:
renderBloodAltar(item, 0, 0, 0.5f, scale);
renderBloodAltar((RenderBlocks) data[0], item, 0, 0, 0.5f, scale);
break;
case EQUIPPED_FIRST_PERSON:
renderBloodAltar(item, +0.5f, 0.5f, +0.5f, scale);
renderBloodAltar((RenderBlocks) data[0], item, +0.5f, 0.5f, +0.5f, scale);
break;
case INVENTORY:
renderBloodAltar(item, -0.5f, -0.75f, -0.5f, scale);
renderBloodAltar((RenderBlocks) data[0], item, -0.5f, -0.75f, -0.5f, scale);
break;
default:
@ -54,7 +53,7 @@ public class TEAltarItemRenderer implements IItemRenderer
}
}
private void renderBloodAltar(ItemStack item, float x, float y, float z, float scale)
private void renderBloodAltar(RenderBlocks render, ItemStack item, float x, float y, float z, float scale)
{
GL11.glPushMatrix();
GL11.glTranslatef(x, y, z);

View file

@ -1,12 +1,12 @@
package WayofTime.alchemicalWizardry.common.renderer.block.itemRender;
import net.minecraft.client.renderer.ItemRenderer;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.WorldRenderer;
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
@ -14,15 +14,17 @@ import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentContainerInfo;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentStack;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelCrystalBelljar;
import WayofTime.alchemicalWizardry.common.tileEntity.TEBelljar;
import WayofTime.alchemicalWizardry.common.tileEntity.TEBellJar;
import cpw.mods.fml.client.FMLClientHandler;
public class TEBellJarItemRenderer implements IItemRenderer
{
ItemRenderer d;
private ModelCrystalBelljar modelConduit = new ModelCrystalBelljar();
private ResourceLocation mainResource = new ResourceLocation("alchemicalwizardry:textures/models/CrystalBelljar.png");
private ResourceLocation resourceLocation = new ResourceLocation("alchemicalwizardry:textures/models/Reagent.png");
private void renderConduitItem(ItemStack item, float translateX, float translateY, float translateZ)
private void renderConduitItem(RenderBlocks render, ItemStack item, float translateX, float translateY, float translateZ)
{
GL11.glPushMatrix();
GL11.glTranslatef((float) translateX + 0.5F, (float) translateY + 1.5F, (float) translateZ + 0.5F);
@ -33,7 +35,7 @@ public class TEBellJarItemRenderer implements IItemRenderer
GL11.glPopMatrix();
GL11.glPopMatrix();
ReagentContainerInfo[] info = TEBelljar.getContainerInfoFromItem(item);
ReagentContainerInfo[] info = TEBellJar.getContainerInfoFromItem(item);
if (info.length >= 1 && info[0] != null)
{
ReagentStack reagentStack = info[0].reagent;
@ -65,7 +67,7 @@ public class TEBellJarItemRenderer implements IItemRenderer
private void renderTankContents(double x, double y, double z, int colourRed, int colourGreen, int colourBlue, int colourIntensity)
{
GL11.glPushMatrix();
Tessellator tessellator = Tessellator.getInstance();
Tessellator tessellator = Tessellator.instance;
FMLClientHandler.instance().getClient().renderEngine.bindTexture(resourceLocation);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S, 10497.0F);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T, 10497.0F);
@ -77,13 +79,12 @@ public class TEBellJarItemRenderer implements IItemRenderer
GL11.glDepthMask(false);
WorldRenderer wr = tessellator.getWorldRenderer();
wr.startDrawingQuads();
wr.func_178961_b(colourRed, colourGreen, colourBlue, colourIntensity);
tessellator.startDrawingQuads();
tessellator.setColorRGBA(colourRed, colourGreen, colourBlue, colourIntensity);
GL11.glTranslated(x + 0.5, y + 0.5, z + 0.5);
wr.func_178963_b(240);
tessellator.setBrightness(240);
double x1 = -4d / 16d;
double x2 = 4d / 16d;
@ -97,26 +98,26 @@ public class TEBellJarItemRenderer implements IItemRenderer
double resy1 = 1.0d;
double resy2 = 1.0d;
wr.addVertexWithUV(x1, y1, z1, resx1, resy1);
wr.addVertexWithUV(x2, y1, z1, resx2, resy1);
wr.addVertexWithUV(x2, y2, z1, resx2, resy2);
wr.addVertexWithUV(x1, y2, z1, resx1, resy2);
wr.addVertexWithUV(x1, y1, z1, resx1, resy1);
wr.addVertexWithUV(x1, y1, z2, resx2, resy1);
wr.addVertexWithUV(x1, y2, z2, resx2, resy2);
wr.addVertexWithUV(x1, y2, z1, resx1, resy2);
wr.addVertexWithUV(x1, y1, z2, resx1, resy1);
wr.addVertexWithUV(x2, y1, z2, resx2, resy1);
wr.addVertexWithUV(x2, y2, z2, resx2, resy2);
wr.addVertexWithUV(x1, y2, z2, resx1, resy2);
wr.addVertexWithUV(x2, y1, z1, resx1, resy1);
wr.addVertexWithUV(x2, y1, z2, resx2, resy1);
wr.addVertexWithUV(x2, y2, z2, resx2, resy2);
wr.addVertexWithUV(x2, y2, z1, resx1, resy2);
wr.addVertexWithUV(x1, y2, z1, resx1, resy1);
wr.addVertexWithUV(x2, y2, z1, resx2, resy1);
wr.addVertexWithUV(x2, y2, z2, resx2, resy2);
wr.addVertexWithUV(x1, y2, z2, resx1, resy2);
tessellator.addVertexWithUV(x1, y1, z1, resx1, resy1);
tessellator.addVertexWithUV(x2, y1, z1, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z1, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z1, resx1, resy2);
tessellator.addVertexWithUV(x1, y1, z1, resx1, resy1);
tessellator.addVertexWithUV(x1, y1, z2, resx2, resy1);
tessellator.addVertexWithUV(x1, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z1, resx1, resy2);
tessellator.addVertexWithUV(x1, y1, z2, resx1, resy1);
tessellator.addVertexWithUV(x2, y1, z2, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z2, resx1, resy2);
tessellator.addVertexWithUV(x2, y1, z1, resx1, resy1);
tessellator.addVertexWithUV(x2, y1, z2, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x2, y2, z1, resx1, resy2);
tessellator.addVertexWithUV(x1, y2, z1, resx1, resy1);
tessellator.addVertexWithUV(x2, y2, z1, resx2, resy1);
tessellator.addVertexWithUV(x2, y2, z2, resx2, resy2);
tessellator.addVertexWithUV(x1, y2, z2, resx1, resy2);
tessellator.draw();
GL11.glDepthMask(true);
@ -163,16 +164,16 @@ public class TEBellJarItemRenderer implements IItemRenderer
switch (type)
{
case ENTITY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
case EQUIPPED:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case EQUIPPED_FIRST_PERSON:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case INVENTORY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
default:
}

View file

@ -1,22 +1,22 @@
package WayofTime.alchemicalWizardry.common.renderer.block.itemRender;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.fml.client.FMLClientHandler;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelConduit;
import cpw.mods.fml.client.FMLClientHandler;
@SuppressWarnings("deprecation")
public class TEConduitItemRenderer implements IItemRenderer
{
private ModelConduit modelConduit = new ModelConduit();
private void renderConduitItem(ItemStack item, float translateX, float translateY, float translateZ)
private void renderConduitItem(RenderBlocks render, ItemStack item, float translateX, float translateY, float translateZ)
{
GL11.glPushMatrix();
GL11.glTranslatef((float) translateX + 0.5F, (float) translateY + 1.5F, (float) translateZ + 0.5F);
@ -24,7 +24,7 @@ public class TEConduitItemRenderer implements IItemRenderer
FMLClientHandler.instance().getClient().renderEngine.bindTexture(test);
GL11.glPushMatrix();
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
this.modelConduit.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, EnumFacing.DOWN, EnumFacing.UP);
this.modelConduit.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, ForgeDirection.DOWN, ForgeDirection.UP);
GL11.glPopMatrix();
GL11.glPopMatrix();
}
@ -65,16 +65,16 @@ public class TEConduitItemRenderer implements IItemRenderer
switch (type)
{
case ENTITY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
case EQUIPPED:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case EQUIPPED_FIRST_PERSON:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case INVENTORY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
default:
}

View file

@ -1,21 +1,22 @@
package WayofTime.alchemicalWizardry.common.renderer.block.itemRender;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.fml.client.FMLClientHandler;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelSpellEffectBlock;
import cpw.mods.fml.client.FMLClientHandler;
public class TESpellEffectBlockItemRenderer implements IItemRenderer
{
private ModelSpellEffectBlock modelSpellBlock = new ModelSpellEffectBlock();
private void renderConduitItem(ItemStack item, float translateX, float translateY, float translateZ)
private void renderConduitItem(RenderBlocks render, ItemStack item, float translateX, float translateY, float translateZ)
{
GL11.glPushMatrix();
GL11.glTranslatef((float) translateX + 0.5F, (float) translateY + 1.5F, (float) translateZ + 0.5F);
@ -24,7 +25,7 @@ public class TESpellEffectBlockItemRenderer implements IItemRenderer
FMLClientHandler.instance().getClient().renderEngine.bindTexture(test);
GL11.glPushMatrix();
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
this.modelSpellBlock.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, EnumFacing.DOWN, EnumFacing.UP);
this.modelSpellBlock.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, ForgeDirection.DOWN, ForgeDirection.UP);
GL11.glPopMatrix();
GL11.glPopMatrix();
}
@ -65,16 +66,16 @@ public class TESpellEffectBlockItemRenderer implements IItemRenderer
switch (type)
{
case ENTITY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
case EQUIPPED:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case EQUIPPED_FIRST_PERSON:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case INVENTORY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
default:
}

View file

@ -1,21 +1,22 @@
package WayofTime.alchemicalWizardry.common.renderer.block.itemRender;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.fml.client.FMLClientHandler;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelSpellEnhancementBlock;
import cpw.mods.fml.client.FMLClientHandler;
public class TESpellEnhancementBlockItemRenderer implements IItemRenderer
{
private ModelSpellEnhancementBlock modelSpellBlock = new ModelSpellEnhancementBlock();
private void renderConduitItem(ItemStack item, float translateX, float translateY, float translateZ)
private void renderConduitItem(RenderBlocks render, ItemStack item, float translateX, float translateY, float translateZ)
{
GL11.glPushMatrix();
GL11.glTranslatef((float) translateX + 0.5F, (float) translateY + 1.5F, (float) translateZ + 0.5F);
@ -24,7 +25,7 @@ public class TESpellEnhancementBlockItemRenderer implements IItemRenderer
FMLClientHandler.instance().getClient().renderEngine.bindTexture(test);
GL11.glPushMatrix();
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
this.modelSpellBlock.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, EnumFacing.DOWN, EnumFacing.UP);
this.modelSpellBlock.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, ForgeDirection.DOWN, ForgeDirection.UP);
GL11.glPopMatrix();
GL11.glPopMatrix();
}
@ -65,16 +66,16 @@ public class TESpellEnhancementBlockItemRenderer implements IItemRenderer
switch (type)
{
case ENTITY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
case EQUIPPED:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case EQUIPPED_FIRST_PERSON:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case INVENTORY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
default:
}

View file

@ -1,21 +1,22 @@
package WayofTime.alchemicalWizardry.common.renderer.block.itemRender;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.fml.client.FMLClientHandler;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelSpellModifierBlock;
import cpw.mods.fml.client.FMLClientHandler;
public class TESpellModifierBlockItemRenderer implements IItemRenderer
{
private ModelSpellModifierBlock modelSpellBlock = new ModelSpellModifierBlock();
private void renderConduitItem(ItemStack item, float translateX, float translateY, float translateZ)
private void renderConduitItem(RenderBlocks render, ItemStack item, float translateX, float translateY, float translateZ)
{
GL11.glPushMatrix();
GL11.glTranslatef((float) translateX + 0.5F, (float) translateY + 1.5F, (float) translateZ + 0.5F);
@ -24,7 +25,7 @@ public class TESpellModifierBlockItemRenderer implements IItemRenderer
FMLClientHandler.instance().getClient().renderEngine.bindTexture(test);
GL11.glPushMatrix();
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
this.modelSpellBlock.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, EnumFacing.DOWN, EnumFacing.UP);
this.modelSpellBlock.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, ForgeDirection.DOWN, ForgeDirection.UP);
GL11.glPopMatrix();
GL11.glPopMatrix();
}
@ -65,16 +66,16 @@ public class TESpellModifierBlockItemRenderer implements IItemRenderer
switch (type)
{
case ENTITY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
case EQUIPPED:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case EQUIPPED_FIRST_PERSON:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case INVENTORY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
default:
}

View file

@ -1,21 +1,22 @@
package WayofTime.alchemicalWizardry.common.renderer.block.itemRender;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.fml.client.FMLClientHandler;
import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelSpellParadigmBlock;
import cpw.mods.fml.client.FMLClientHandler;
public class TESpellParadigmBlockItemRenderer implements IItemRenderer
{
private ModelSpellParadigmBlock modelSpellBlock = new ModelSpellParadigmBlock();
private void renderConduitItem(ItemStack item, float translateX, float translateY, float translateZ)
private void renderConduitItem(RenderBlocks render, ItemStack item, float translateX, float translateY, float translateZ)
{
GL11.glPushMatrix();
GL11.glTranslatef((float) translateX + 0.5F, (float) translateY + 1.5F, (float) translateZ + 0.5F);
@ -23,7 +24,7 @@ public class TESpellParadigmBlockItemRenderer implements IItemRenderer
FMLClientHandler.instance().getClient().renderEngine.bindTexture(test);
GL11.glPushMatrix();
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
this.modelSpellBlock.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, EnumFacing.DOWN, EnumFacing.UP);
this.modelSpellBlock.render((Entity) null, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, ForgeDirection.DOWN, ForgeDirection.UP);
GL11.glPopMatrix();
GL11.glPopMatrix();
}
@ -64,16 +65,16 @@ public class TESpellParadigmBlockItemRenderer implements IItemRenderer
switch (type)
{
case ENTITY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
case EQUIPPED:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case EQUIPPED_FIRST_PERSON:
renderConduitItem(item, -0.4f, 0.50f, 0.35f);
renderConduitItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f);
break;
case INVENTORY:
renderConduitItem(item, -0.5f, -0.5f, -0.5f);
renderConduitItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f);
break;
default:
}

View file

@ -1,22 +1,20 @@
package WayofTime.alchemicalWizardry.common.renderer.block.itemRender;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelWritingTable;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.fml.client.FMLClientHandler;
import org.lwjgl.opengl.GL11;
import WayofTime.alchemicalWizardry.common.renderer.model.ModelChemistrySet;
public class TEChemistrySetItemRenderer implements IItemRenderer
public class TEWritingTableItemRenderer implements IItemRenderer
{
private ModelChemistrySet model;
private ModelWritingTable model;
public TEChemistrySetItemRenderer()
public TEWritingTableItemRenderer()
{
model = new ModelChemistrySet();
model = new ModelWritingTable();
}
@Override