Jump to content

[SOLVED] [1.8.9] DrawRect messes up the GUI (Hunger Bar and Armour)


Jocore

Recommended Posts

Posted (edited)
public class HUD {

    public Minecraft mc = Minecraft.getMinecraft();

    public static class ModuleComparator implements Comparator<Module>{
        @Override
        public int compare(Module o1, Module o2) {

            if (Minecraft.getMinecraft().fontRendererObj.getStringWidth(o1.name) > Minecraft.getMinecraft().fontRendererObj.getStringWidth(o2.name)){
                return -1;
            }
            if (Minecraft.getMinecraft().fontRendererObj.getStringWidth(o1.name) < Minecraft.getMinecraft().fontRendererObj.getStringWidth(o2.name)){
                return 1;
            }

            return 0;
        }
    }

    public void draw(){

        ScaledResolution sr = new ScaledResolution(mc);
        FontRenderer fr = mc.fontRendererObj;

        Collections.sort(Client.modules, new ModuleComparator());

        GlStateManager.pushMatrix();
        GlStateManager.translate(4,4,0);
        GlStateManager.scale(1.5,1.5,1);
        GlStateManager.translate(-4, -4, 0);
        fr.drawString("Skyline", 10, 10, -1);
        GlStateManager.popMatrix();

        int count = 0;

        for (Module m : Client.modules){
            if (!m.toggled || m.name.equals("TabGUI"))
                continue;

            int offset = count* (fr.FONT_HEIGHT + 6);


            GL11.glTranslated(0.0f, 0.0f, -1.0f);
            Gui.drawRect(sr.getScaledWidth() - fr.getStringWidth(m.name) - 10, offset, sr.getScaledWidth() - fr.getStringWidth(m.name) - 8, 6 + fr.FONT_HEIGHT + offset, -1);
            Gui.drawRect(sr.getScaledWidth() - fr.getStringWidth(m.name) - 8, offset, sr.getScaledWidth(), 6 + fr.FONT_HEIGHT + offset, 0x90000000);
            fr.drawString(m.name, sr.getScaledWidth() - fr.getStringWidth(m.name) - 4, offset + 4, -1);

            count++;
        }

        Client.onEvent(new EventRenderGUI());
    }

}

I have just recently stumbled upon this Problem, where the HudRenderer renders the wrong section of the textures and therefore completely destroys the Minecraft Armour and Hunger Bar. I am currently thinking if it is an issue with the DrawRect changing something it shouldn't. But I couldn't find anything about it. (To keep things Clean, the function is Called from another file)

public class RenderGUIHandler {

    @SubscribeEvent
    public void renderGUI(RenderGameOverlayEvent.Post event){
        Client.hud.draw();
    }

}

Any help would be greatly appreciated :) 

Edited by Jocore
Solved the Problem
Link to comment
Share on other sites

[SOLVED] 

public class RenderGUIHandler {

    @SubscribeEvent
    public void renderGUI(RenderGameOverlayEvent.Text event){
        Client.hud.draw();
    }

}

As I was playing around a little with the code, i found out about an option to change The RenderGameOverlayEvent.Post to RenderGameOverlayEvent.Text

Link to comment
Share on other sites

  • Jocore changed the title to [SOLVED] [1.8.9] DrawRect messes up the GUI (Hunger Bar and Armour)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.