Jump to content

Recommended Posts

Posted

Hi. I would like to ask how I can add a GUI in the normal playing screen. I want to add a bar like the Hunger/Health bar which is always shown and it does not pause the game.  I tried with GuiScreen but it pauses the game and it disables controls like movement.

Posted

Ok so I created this


OPCooldownBar cb = new OPCooldownBar();

@SubscribeEvent
    public void RenderGameOverlayEvent(RenderGameOverlayEvent event){
	cb.render(cooldown, cooldownMax);

}

 

and here is the OPCooldownBar class

 

public class OPCooldownBar extends Gui {

public OPCooldownBar() {
	super();
}

int offsetX = 5;
int y = 223;
int xSize = 80;
int green = Color.GREEN.getRGB();
int red = Color.RED.getRGB();

public void render(int cooldown, int cooldownMax){
		int i = (int)getPercentage(cooldown, cooldownMax);
		this.drawRect(offsetX, y, offsetX + xSize - i, y + 3, getColor(i));

	}

private int getColor(int i) {
	if(i == 0){
		return green;
	}
		return red;

}

public float getPercentage(int n, int total) {
    float proportion = ((float) n) / ((float) total);
    return proportion * xSize;
}

}

 

Everything works fine except that the GUI colors act a little strange and that 2 bars instead of one are showing (See "circled" areas):

GrXX770.png

sVZQMex.png

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.