diff options
author | Detrav <witalyezep@gmail.com> | 2016-04-07 16:52:55 +0300 |
---|---|---|
committer | Detrav <witalyezep@gmail.com> | 2016-04-07 16:52:55 +0300 |
commit | a2229132fe8b7f9a2927e827f828a8989c02851b (patch) | |
tree | 772defa2d1ffc92e36b1a6ccc6b58cb0553f102b /src/main/java/com/detrav/gui/textures/DetravMapTexture.java | |
parent | 75a60a12494da3593aa77d9de193b328691ae8aa (diff) | |
download | GT5-Unofficial-a2229132fe8b7f9a2927e827f828a8989c02851b.tar.gz GT5-Unofficial-a2229132fe8b7f9a2927e827f828a8989c02851b.tar.bz2 GT5-Unofficial-a2229132fe8b7f9a2927e827f828a8989c02851b.zip |
Add gui to charger, refactor
Diffstat (limited to 'src/main/java/com/detrav/gui/textures/DetravMapTexture.java')
-rw-r--r-- | src/main/java/com/detrav/gui/textures/DetravMapTexture.java | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/src/main/java/com/detrav/gui/textures/DetravMapTexture.java b/src/main/java/com/detrav/gui/textures/DetravMapTexture.java new file mode 100644 index 0000000000..2e4be47af2 --- /dev/null +++ b/src/main/java/com/detrav/gui/textures/DetravMapTexture.java @@ -0,0 +1,69 @@ +package com.detrav.gui.textures; + +import com.detrav.net.DetravProPickPacket01; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.client.renderer.texture.AbstractTexture; +import net.minecraft.client.renderer.texture.TextureUtil; +import net.minecraft.client.resources.IResourceManager; +import org.lwjgl.opengl.GL11; + +import java.awt.image.BufferedImage; +import java.io.IOException; +import java.util.HashMap; +import java.util.List; + +/** + * Created by wital_000 on 21.03.2016. + */ +public class DetravMapTexture extends AbstractTexture { + + private DetravProPickPacket01 packet; + + public DetravMapTexture(DetravProPickPacket01 aPacket) + { + packet = aPacket; + } + + public int width = -1; + public int height = -1; + public HashMap<String,Integer> ores = null; + + @Override + public void loadTexture(IResourceManager p_110551_1_){ + this.deleteGlTexture(); + if(packet!=null) + { + int tId = getGlTextureId(); + if(tId <0) return; + BufferedImage bufferedimage = packet.getImage((int)Minecraft.getMinecraft().thePlayer.posX,(int)Minecraft.getMinecraft().thePlayer.posZ); + TextureUtil.uploadTextureImageAllocate(this.getGlTextureId(), bufferedimage, false, false); + width = packet.getSize(); + height = packet.getSize(); + ores = packet.getOres(); + } + //GL11.glDrawPixels(); + } + + public int glBindTexture() { + if (this.glTextureId < 0) return this.glTextureId; + GL11.glBindTexture(GL11.GL_TEXTURE_2D, this.getGlTextureId()); + return this.glTextureId; + } + + public void draw(int x, int y) + { + float f = 1F / (float)width; + float f1 = 1F / (float)height; + int u = 0; + int v = 0; + Tessellator tessellator = Tessellator.instance; + tessellator.startDrawingQuads(); + tessellator.addVertexWithUV((double)(x), (double)(y + height), 0, (double)((float)(u) * f), (double)((float)(v + height) * f1)); + tessellator.addVertexWithUV((double)(x + width), (double)(y + height), 0, (double)((float)(u + width) * f), (double)((float)(v + height) * f1)); + tessellator.addVertexWithUV((double)(x + width), (double)(y), 0, (double)((float)(u + width) * f), (double)((float)(v) * f1)); + tessellator.addVertexWithUV((double)(x), (double)(y), 0, (double)((float)(u) * f), (double)((float)(v) * f1)); + tessellator.draw(); + } + +} |