class Button { int buttonx, buttony; int Size; PImage baseimage,overimage,pressimage,currentimage; boolean over = false; boolean press = false; Button(int xpos, int ypos, int s, PImage b, PImage o, PImage p) { buttonx = xpos; buttony = ypos; Size = s; baseimage = b; overimage = o; pressimage = p; currentimage=baseimage; } //updates "over" void update() { if ((mouseX >= buttonx) && (mouseX<= buttonx+Size) && (mouseY >= buttony) && (mouseY<= buttony+Size)) { over = true; } else { over = false; } } //updates "press" when mouse pressed boolean press() { if (over == true) { press = true; return true; } else { return false; } } //set "press" to false when mouse released void release() { press = false; } //draws the button void display() { if (press == true) { currentimage=pressimage; } else if (over == true) { currentimage=overimage; } else { currentimage=baseimage; } image(currentimage,buttonx,buttony); } }