generated from tilera/1710mod
61 lines
2.5 KiB
Java
61 lines
2.5 KiB
Java
package electricexpansion.client.render;
|
|
|
|
import net.minecraft.client.gui.FontRenderer;
|
|
import net.minecraft.client.renderer.Tessellator;
|
|
import net.minecraft.client.renderer.entity.RenderManager;
|
|
import org.lwjgl.opengl.GL11;
|
|
|
|
public class RenderFloatingText {
|
|
public static void renderFloatingText(final String text, final float x,
|
|
final float y, final float z) {
|
|
renderFloatingText(text, x, y, z, 16777215);
|
|
}
|
|
|
|
public static void renderFloatingText(final String text, final float x,
|
|
final float y, final float z,
|
|
final int color) {
|
|
final RenderManager renderManager = RenderManager.instance;
|
|
final FontRenderer fontRenderer = renderManager.getFontRenderer();
|
|
final float scale = 0.027f;
|
|
GL11.glColor4f(1.0f, 1.0f, 1.0f, 0.5f);
|
|
GL11.glPushMatrix();
|
|
GL11.glTranslatef(x + 0.0f, y + 2.3f, z);
|
|
GL11.glNormal3f(0.0f, 1.0f, 0.0f);
|
|
GL11.glRotatef(-renderManager.playerViewY, 0.0f, 1.0f, 0.0f);
|
|
GL11.glRotatef(renderManager.playerViewX, 1.0f, 0.0f, 0.0f);
|
|
GL11.glScalef(-scale, -scale, scale);
|
|
GL11.glDisable(2896);
|
|
GL11.glDepthMask(false);
|
|
GL11.glDisable(2929);
|
|
GL11.glEnable(3042);
|
|
GL11.glBlendFunc(770, 771);
|
|
final Tessellator tessellator = Tessellator.instance;
|
|
final int yOffset = 0;
|
|
GL11.glDisable(3553);
|
|
tessellator.startDrawingQuads();
|
|
final int stringMiddle = fontRenderer.getStringWidth(text) / 2;
|
|
tessellator.setColorRGBA_F(0.0f, 0.0f, 0.0f, 0.5f);
|
|
tessellator.addVertex((double) (-stringMiddle - 1), (double) (-1 + yOffset),
|
|
0.0);
|
|
tessellator.addVertex((double) (-stringMiddle - 1), (double) (8 + yOffset),
|
|
0.0);
|
|
tessellator.addVertex((double) (stringMiddle + 1), (double) (8 + yOffset),
|
|
0.0);
|
|
tessellator.addVertex((double) (stringMiddle + 1), (double) (-1 + yOffset),
|
|
0.0);
|
|
tessellator.draw();
|
|
GL11.glEnable(3553);
|
|
GL11.glColor4f(1.0f, 1.0f, 1.0f, 0.5f);
|
|
fontRenderer.drawString(text, -fontRenderer.getStringWidth(text) / 2,
|
|
yOffset, color);
|
|
GL11.glEnable(2929);
|
|
GL11.glDepthMask(true);
|
|
fontRenderer.drawString(text, -fontRenderer.getStringWidth(text) / 2,
|
|
yOffset, color);
|
|
GL11.glEnable(2896);
|
|
GL11.glDisable(3042);
|
|
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
|
GL11.glPopMatrix();
|
|
}
|
|
}
|