Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.darkmagician6.morbid.util;
- import net.minecraft.client.Minecraft;
- import net.minecraft.src.AxisAlignedBB;
- import net.minecraft.src.Gui;
- import org.lwjgl.opengl.GL11;
- public class RenderUtils
- extends Gui
- {
- private Minecraft mc;
- public RenderUtils(Minecraft mc)
- {
- this.mc = mc;
- }
- public void drawHalRect(double x, double y, double x1, double y1, boolean b, boolean e)
- {
- if (e)
- {
- if (b) {
- drawBorderedRect(x, y, x1, y1, 1.0F, 0.3F, 0.6F, 0.9F, 0.75F);
- } else {
- drawBorderedRect(x, y, x1, y1, 1.0F, 0.2F, 0.5F, 0.8F, 0.75F);
- }
- }
- else if (b) {
- drawBorderedRect(x, y, x1, y1, 1.0F, 0.5F, 0.5F, 0.5F, 0.75F);
- } else {
- drawBorderedRect(x, y, x1, y1, 1.0F, 0.3F, 0.3F, 0.3F, 0.75F);
- }
- }
- public void drawBorderedRect(double x, double y, double x1, double y1, float width, float r, float g, float b, float a)
- {
- drawRect(x + 0.5D, y + 0.5D, x1 - 0.5D, y1 - 0.5D, r, g, b, a);
- drawRect(x, y, x1, y + width, r + 0.1F, g + 0.1F,
- b + 0.1F, 1.0F);
- drawRect(x, y, x + width, y1, r + 0.1F, g + 0.1F,
- b + 0.1F, 1.0F);
- drawRect(x1 - width, y, x1, y1, r + 0.1F, g + 0.1F,
- b + 0.1F, 1.0F);
- drawRect(x, y1 - width, x1, y1, r + 0.1F, g + 0.1F,
- b + 0.1F, 1.0F);
- }
- public void drawRect(double x, double y, double d, double e, int color)
- {
- float alpha = (color >> 24 & 0xFF) / 255.0F;
- float red = (color >> 16 & 0xFF) / 255.0F;
- float green = (color >> 8 & 0xFF) / 255.0F;
- float blue = (color & 0xFF) / 255.0F;
- drawRect(x, y, d, e, red, green, blue, alpha);
- }
- public void drawBorderedRect(double x, double y, double x1, double y1, float width, int color)
- {
- float alpha = (color >> 24 & 0xFF) / 255.0F;
- float red = (color >> 16 & 0xFF) / 255.0F;
- float green = (color >> 8 & 0xFF) / 255.0F;
- float blue = (color & 0xFF) / 255.0F;
- drawBorderedRect(x, y, x1, y1, width, red, green, blue, alpha);
- }
- public void drawRect(double x, double y, double x1, double y1, float r, float g, float b, float a)
- {
- start2dRendering();
- enableSmoothing();
- GL11.glColor4f(r, g, b, a);
- drawRect(x, y, x1, y1);
- end2dRendering();
- disableSmoothing();
- }
- public void drawRect(double x, double y, double x1, double y1)
- {
- GL11.glBegin(7);
- GL11.glVertex2d(x, y1);
- GL11.glVertex2d(x1, y1);
- GL11.glVertex2d(x1, y);
- GL11.glVertex2d(x, y);
- GL11.glEnd();
- }
- public static void drawLine(double x, double y, double x1, double y1, float width)
- {
- GL11.glLineWidth(width);
- GL11.glBegin(1);
- GL11.glVertex2d(x, y);
- GL11.glVertex2d(x1, y1);
- GL11.glEnd();
- }
- public void enableSmoothing()
- {
- GL11.glEnable(2848);
- GL11.glHint(3154, 4354);
- }
- public void disableSmoothing()
- {
- GL11.glDisable(2848);
- }
- public void start2dRendering()
- {
- GL11.glDisable(2929);
- GL11.glEnable(3042);
- GL11.glDisable(3553);
- GL11.glBlendFunc(770, 771);
- }
- public void end2dRendering()
- {
- GL11.glEnable(3553);
- GL11.glDisable(3042);
- GL11.glEnable(2929);
- }
- public void drawOutlinedBox(AxisAlignedBB box)
- {
- GL11.glBegin(3);
- GL11.glVertex3d(box.minX, box.minY, box.minZ);
- GL11.glVertex3d(box.maxX, box.minY, box.minZ);
- GL11.glVertex3d(box.maxX, box.minY, box.maxZ);
- GL11.glVertex3d(box.minX, box.minY, box.maxZ);
- GL11.glVertex3d(box.minX, box.minY, box.minZ);
- GL11.glEnd();
- GL11.glBegin(3);
- GL11.glVertex3d(box.minX, box.maxY, box.minZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.minZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.maxZ);
- GL11.glVertex3d(box.minX, box.maxY, box.maxZ);
- GL11.glVertex3d(box.minX, box.maxY, box.minZ);
- GL11.glEnd();
- GL11.glBegin(1);
- GL11.glVertex3d(box.minX, box.minY, box.minZ);
- GL11.glVertex3d(box.minX, box.maxY, box.minZ);
- GL11.glVertex3d(box.maxX, box.minY, box.minZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.minZ);
- GL11.glVertex3d(box.maxX, box.minY, box.maxZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.maxZ);
- GL11.glVertex3d(box.minX, box.minY, box.maxZ);
- GL11.glVertex3d(box.minX, box.maxY, box.maxZ);
- GL11.glEnd();
- }
- public void drawBox(AxisAlignedBB box)
- {
- GL11.glBegin(7);
- GL11.glVertex3d(box.minX, box.minY, box.maxZ);
- GL11.glVertex3d(box.maxX, box.minY, box.maxZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.maxZ);
- GL11.glVertex3d(box.minX, box.maxY, box.maxZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.maxX, box.minY, box.maxZ);
- GL11.glVertex3d(box.minX, box.minY, box.maxZ);
- GL11.glVertex3d(box.minX, box.maxY, box.maxZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.maxZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.minX, box.minY, box.minZ);
- GL11.glVertex3d(box.minX, box.minY, box.maxZ);
- GL11.glVertex3d(box.minX, box.maxY, box.maxZ);
- GL11.glVertex3d(box.minX, box.maxY, box.minZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.minX, box.minY, box.maxZ);
- GL11.glVertex3d(box.minX, box.minY, box.minZ);
- GL11.glVertex3d(box.minX, box.maxY, box.minZ);
- GL11.glVertex3d(box.minX, box.maxY, box.maxZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.maxX, box.minY, box.maxZ);
- GL11.glVertex3d(box.maxX, box.minY, box.minZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.minZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.maxZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.maxX, box.minY, box.minZ);
- GL11.glVertex3d(box.maxX, box.minY, box.maxZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.maxZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.minZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.minX, box.minY, box.minZ);
- GL11.glVertex3d(box.maxX, box.minY, box.minZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.minZ);
- GL11.glVertex3d(box.minX, box.maxY, box.minZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.maxX, box.minY, box.minZ);
- GL11.glVertex3d(box.minX, box.minY, box.minZ);
- GL11.glVertex3d(box.minX, box.maxY, box.minZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.minZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.minX, box.maxY, box.minZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.minZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.maxZ);
- GL11.glVertex3d(box.minX, box.maxY, box.maxZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.maxX, box.maxY, box.minZ);
- GL11.glVertex3d(box.minX, box.maxY, box.minZ);
- GL11.glVertex3d(box.minX, box.maxY, box.maxZ);
- GL11.glVertex3d(box.maxX, box.maxY, box.maxZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.minX, box.minY, box.minZ);
- GL11.glVertex3d(box.maxX, box.minY, box.minZ);
- GL11.glVertex3d(box.maxX, box.minY, box.maxZ);
- GL11.glVertex3d(box.minX, box.minY, box.maxZ);
- GL11.glEnd();
- GL11.glBegin(7);
- GL11.glVertex3d(box.maxX, box.minY, box.minZ);
- GL11.glVertex3d(box.minX, box.minY, box.minZ);
- GL11.glVertex3d(box.minX, box.minY, box.maxZ);
- GL11.glVertex3d(box.maxX, box.minY, box.maxZ);
- GL11.glEnd();
- }
- public void drawCrossedBox(AxisAlignedBB ax, float r, float g, float b, boolean c)
- {
- if (c)
- {
- GL11.glColor4f(r, g, b, 0.1F);
- drawBox(ax);
- }
- GL11.glColor4f(r, g, b, 0.75F);
- GL11.glLineWidth(1.0F);
- drawOutlinedBox(ax);
- GL11.glLineWidth(0.75F);
- GL11.glBegin(1);
- GL11.glVertex3d(ax.maxX, ax.maxY, ax.maxZ);
- GL11.glVertex3d(ax.maxX, ax.minY, ax.minZ);
- GL11.glVertex3d(ax.maxX, ax.maxY, ax.minZ);
- GL11.glVertex3d(ax.minX, ax.maxY, ax.maxZ);
- GL11.glVertex3d(ax.minX, ax.maxY, ax.minZ);
- GL11.glVertex3d(ax.maxX, ax.minY, ax.minZ);
- GL11.glVertex3d(ax.minX, ax.minY, ax.maxZ);
- GL11.glVertex3d(ax.maxX, ax.maxY, ax.maxZ);
- GL11.glVertex3d(ax.minX, ax.minY, ax.maxZ);
- GL11.glVertex3d(ax.minX, ax.maxY, ax.minZ);
- GL11.glVertex3d(ax.minX, ax.minY, ax.minZ);
- GL11.glVertex3d(ax.maxX, ax.minY, ax.maxZ);
- GL11.glEnd();
- }
- public void prepareScissorBox(float x, float y, float x2, float y2) {}
- public static Long getSystemTime()
- {
- return Long.valueOf(System.nanoTime() / 1000000L);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement