i need a little help i am working on a mod that add a command menu i want it to be a stand alone mod that can be added to like the tabs but this will effect left clicking with the mouse with the attack/brake as the fiest command but i cant figer out how to animate the menu i have ben trying for two weeks to do this with out asking for help but i am stuck and i need help configing it with the key bord and heres is a image on how far i got.
package mymods.my_hud;
import mymods.MyMods;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.gui.Gui;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.potion.Potion;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.World;
import net.minecraftforge.common.model.animation.Clips.TriggerClip;
import org.lwjgl.opengl.GL11;
import java.text.DecimalFormat;
/*
* This is where the battle menu will be
* just need to figer out the how this will work out
*
*/
public class MyBattleHud extends Gui{
private final static ResourceLocation Menu = new ResourceLocation(MyMods.MODID,"/textures/gui/Menu2.png");
/* These two variables describe the size of the bar */
private final static int BAR_WIDTH = 90;
private final static int BAR_HEIGHT = 15;
private final static int BAR_SPACING_ABOVE_EXP_BAR = 3; // pixels between the BAR and the Experience Bar below it
private static int x = 220;
//this if for test
private static String text = "Commands";
private static String text2 = "Attack";
private static String text3 = "?";
private static String text4 = "?";
private static String text5 = "?";
private Minecraft mc;
public MyBattleHud(Minecraft mc) {
this.mc = mc;
}
/* This helper method will render the bar */
public void renderStatusBar(int screenWidth, int screenHeight) {
/* These are the variables that contain world and player information */
World world = mc.theWorld;
EntityPlayer player = mc.thePlayer;
/* This object draws text using the Minecraft font */
FontRenderer fr = mc.fontRendererObj;
/* This object inserts commas into number strings */
DecimalFormat d = new DecimalFormat("#,###");
/* Saving the current state of OpenGL so that I can restore it when I'm done */
GL11.glPushAttrib(GL11.GL_ALL_ATTRIB_BITS);
GL11.glPushMatrix();
/* I like to indent the code whenever I push. It helps me visualize what is
* happening better. This is a personal preference though.
*/
/* Set the rendering color to white */
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
/* This method tells OpenGL to draw with the custom texture */
mc.renderEngine.bindTexture(Menu);
// we will draw the status bar just above the hotbar.
// obtained by inspecting the vanilla hotbar rendering code
final int vanillaExpLeftX = screenWidth / 2 - 91; // leftmost edge of the experience bar
final int vanillaExpTopY = screenHeight - 32 + 3; // top of the experience bar
/* Shift our rendering origin to just above the experience bar
* The top left corner of the screen is x=0, y=0
*/
GL11.glTranslatef(vanillaExpLeftX, vanillaExpTopY - BAR_SPACING_ABOVE_EXP_BAR - BAR_HEIGHT, 0);
// this is for test
drawTexturedModalRect(x, -30, 0, 3, BAR_WIDTH, BAR_HEIGHT);
drawTexturedModalRect(x, -1, 0, 38, BAR_WIDTH, BAR_HEIGHT);
drawTexturedModalRect(x, 14, 0, 38, BAR_WIDTH, BAR_HEIGHT);
drawTexturedModalRect(x, 29, 0, 38, BAR_WIDTH, BAR_HEIGHT);
//command select
drawTexturedModalRect(215, -16, 0, 20, BAR_WIDTH, BAR_HEIGHT);
drawCenteredString(fr, text, 265, -28, 255);
GL11.glPushMatrix();
GL11.glTranslatef(1, 1, 0);
GL11.glPushMatrix();
GL11.glPopMatrix();
GL11.glPopMatrix();
GL11.glPopMatrix();
GL11.glPopAttrib();
}
}