Jump to content

Recommended Posts

Posted

Hi guys,

 

I have a problem with rendering a GUI and I've exhausted all debugging options I can think of, so i thought someone here might have an idea.

 

The problem is that I'm trying to render a dynamically sized tank, but Minecraft isn't displaying anything (not even the super simple drawRect rectangle).

 

This is the relevant code:

 

   

@Override
    public void render(Minecraft minecraft, int offsetX, int offsetY, int mouseX, int mouseY) {
        //Gray Background
        drawRect(offsetX + x, offsetY + y, offsetX + x + width, offsetY + y + height, Colors.DARK_GRAY);

        //Fluid Level
        if(fluid != null) {

        }

        minecraft.getTextureManager().bindTexture(Textures.Gui.MACHINE_ELEMENTS);

        //Foreground
        //right side
        int xStart = width - 3;
        int newHeight = height - 2;
        for(int i = 0; i < newHeight / 2; i++) {
            drawTexturedModalRect(offsetX + x + xStart, offsetY + y + 1 + (newHeight % 2) + (i * 2), 1, 7, 3, 2);
        }
        //top border
        xStart = width - 4;
        drawTexturedModalRect(offsetX + x + xStart, offsetY + y, 0, 6, 4, 1);
        for(int i = 0; i < xStart; i++) {
            drawTexturedModalRect(offsetX + x + i, offsetY + y, 0, 6, 1, 1);
        }
        //bottom border
        drawTexturedModalRect(offsetX + x, offsetY + y + height - 1, 0, 9, 4, 1);
        for(int i = 4; i < xStart + 4; i++) {
            drawTexturedModalRect(offsetX + x + i, offsetY + y + height - 1, 1, 9, 1, 1);
        }
        //left border
        if(newHeight % 2 != 0) drawTexturedModalRect(offsetX + x, offsetY + y + 1, 0, 7, 1, 1);
        for(int i = 0; i < newHeight / 2; i++) {
            drawTexturedModalRect(offsetX + x, offsetY + y + 1 + (newHeight % 2) + (i * 2), 0, 7, 1, 2);
        }
    }

 

You can find the full project here: https://github.com/Todkommt/Mass-Effect-Ships-Mod

And this is the only usage of this class (GuiComponentFluidGauge.java): GuiDeuteriumExtractor.java

Theres also this extremely similar component that works perfectly fine: GuiComponentEnergyGauge.java

 

Some extra debug info:

The coordinates are translated to the space of a root object (so x = 63 means 63 from the top left corner of the gui screen, not the minecraft window)

 

offsetX = 0

offsetY = 0

x = 63

y = 8

width = 14

height = 42

Colors.DARK_GRAY = 0x8B8B8B

zLevel = 0

 

Any help would be greatly appreciated =)

Posted

Is this simply a GuiScreen or, a GuiContainer?

I am not a cat. I know my profile picture is sexy and amazing beyond anything you could imagine but my cat like features only persist in my fierce eyes. I might be a cat.

Posted

Is the render method being called?

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

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.