Divine's GUI Paint System
What is this paint system, and how can it benefit me?:
This is an open source class which you can implement into any script for extremely quick + clean paint. It is not paint, but can be used instead or along with paint. It is a seperate window which displays whatever information you wish to display!How easy is it?:
Notice how few lines create and draw the entire window:
Media:
Does it consume a lot of memory?:
Very low memory usage, much smaller than drawing paint on the client screen.Instructions for use:
Add the new .java file into your project (GUIPaint.java).
Code with few easy methods.
Make sure to include the compiled .class inside the script jar, or along with the other script classes.
Code Syntax:
This code goes in onPaint(Graphics g) inside YOUR script.
Always start with this line:
GUIPaint.buildFrame("GUI WINDOW TITLE");
Then, you MUST define a category. When you want to set a new category, after the last cell in the previous category, use the same code again.
GUIPaint.setCategory("Category Name");
Next, add as many cells as you wish! If you go too high, specify in GUIPaint.buildFrame(name, MAX_CELLS) to increase the maximum amount of cells. The default is 20.
Also, addCell supports value types of String, doubles, booleans, longs, and integers.
GUIPaint.addCell("NAME OF ITEM (WITHOUT COLON)", "VALUE");
Always End with RefreshPaint():
GUIPaint.RefreshPaint();
To have the Window CLOSE on script exit, add GUIHandler.CloseGUI() inside your onExit():
public void onExit() {
GUIPaint.CloseGUI();
}
A good example of a full implementation, displaying static text:
public void onPaint(Graphics g) {
GUIPaint.buildFrame("Clay Miner");
GUIPaint.setCategory("Time");
GUIPaint.addCell("Time Running", "00:00:00");
GUIPaint.setCategory("Clay");
GUIPaint.addCell("Clay", 0);
GUIPaint.addCell("Clay / Hour", 0);
GUIPaint.setCategory("Experience");
GUIPaint.addCell("Experience", 0);
GUIPaint.addCell("Experience / Hour", 0);
GUIPaint.RefreshPaint();
}
public void onExit() {
GUIPaint.CloseGUI();
}
Download the GUIPaint class HERE: http://uppit.com/vrkhkxohfryb/GUIPaint.java