Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.creativemd.randomadditions.client.rendering;
- import org.lwjgl.opengl.GL11;
- import net.minecraft.block.Block;
- import net.minecraft.client.Minecraft;
- import net.minecraft.client.gui.FontRenderer;
- import net.minecraft.client.renderer.ItemRenderer;
- import net.minecraft.client.renderer.OpenGlHelper;
- import net.minecraft.client.renderer.RenderBlocks;
- import net.minecraft.client.renderer.Tessellator;
- import net.minecraft.client.renderer.entity.RenderItem;
- import net.minecraft.client.renderer.texture.TextureManager;
- import net.minecraft.client.renderer.texture.TextureMap;
- import net.minecraft.item.Item;
- import net.minecraft.item.ItemStack;
- import net.minecraft.util.IIcon;
- import net.minecraft.util.ResourceLocation;
- import cpw.mods.fml.relauncher.Side;
- import cpw.mods.fml.relauncher.SideOnly;
- @SideOnly(Side.CLIENT)
- public class RenderHelper2D {
- public static RenderItem renderer = RenderItem.getInstance();
- public static Minecraft mc = Minecraft.getMinecraft();
- public static void renderItem(ItemStack stack, int x, int y)
- {
- renderItem(stack, x, y, 1.0);
- }
- public static void renderItem(ItemStack stack, int x, int y, double alpha, double rotation)
- {
- renderItem(stack, x, y, alpha, rotation, 16, 16);
- }
- public static void renderItem(ItemStack stack, int x, int y, double alpha, double rotation, double sizeX, double sizeY)
- {
- if(stack != null)
- renderItemIntoGUI(mc.fontRenderer, mc.renderEngine, stack, x, y, true, alpha, rotation, sizeX, sizeY);
- }
- public static void renderItem(ItemStack stack, int x, int y, double alpha)
- {
- renderItem(stack, x, y, alpha, 0);
- }
- public static void renderIcon(IIcon icon, int x, int y, double alpha, boolean isBlock, double rotation, double sizeX, double sizeY)
- {
- GL11.glPushMatrix();
- GL11.glTranslated(x+8, y+8, 0);
- GL11.glRotated(rotation, 0, 0, 1);
- GL11.glTranslated(-x-8, -y-8, 0);
- GL11.glDisable(GL11.GL_LIGHTING);
- GL11.glEnable(GL11.GL_BLEND);
- OpenGlHelper.glBlendFunc(770, 771, 1, 0);
- int sprite = 1;
- if(isBlock)
- sprite = 0;
- ResourceLocation resourcelocation = mc.renderEngine.getResourceLocation(sprite);
- mc.renderEngine.bindTexture(resourcelocation);
- GL11.glDisable(GL11.GL_LIGHTING); //Forge: Make sure that render states are reset, a renderEffect can derp them up.
- GL11.glEnable(GL11.GL_ALPHA_TEST);
- GL11.glEnable(GL11.GL_BLEND);
- GL11.glColor4d(1, 1, 1, alpha);
- renderer.renderIcon(x, y, icon, (int)sizeX, (int)sizeY);
- GL11.glEnable(GL11.GL_LIGHTING);
- GL11.glDisable(GL11.GL_ALPHA_TEST);
- GL11.glDisable(GL11.GL_BLEND);
- GL11.glEnable(GL11.GL_LIGHTING);
- GL11.glEnable(GL11.GL_CULL_FACE);
- GL11.glPopMatrix();
- }
- public static void renderItemIntoGUI(FontRenderer font, TextureManager texture, ItemStack stack, int x, int y, boolean renderEffect, double alpha, double rotation, double sizeX, double sizeY)
- {
- //necessary render code
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement