class Crap { int x_index = 0; int y_index = 0; color c = color(250, 0, 0); float tileRes; float ratio; int prep_time = 180; int cur_time = 0; float SHADING = 0.5; float HEIGHT = 20; float SIZE = .6; Crap(float iTR, float iR) { tileRes = iTR * SIZE; ratio = iR; } void display() { noStroke(); pushMatrix(); translate(((tileRes / SIZE) - tileRes) / 2, 0); fill(red(c) * SHADING, green(c) * SHADING, blue(c) * SHADING); beginShape(); vertex(0, 0); vertex(0, -HEIGHT); vertex(tileRes / 2, -HEIGHT + ratio * tileRes / 2); vertex(tileRes / 2, ratio * tileRes / 2); vertex(0, 0); endShape(); fill(red(c), green(c), blue(c)); beginShape(); vertex(0, -HEIGHT); vertex(tileRes / 2, -HEIGHT + ratio * tileRes / 2); vertex(tileRes, -HEIGHT); vertex(tileRes / 2, -HEIGHT - ratio * tileRes / 2); vertex(0, -HEIGHT); endShape(); fill(red(c) * SHADING * SHADING, green(c) * SHADING * SHADING, blue(c) * SHADING * SHADING); beginShape(); vertex(tileRes / 2, -HEIGHT + ratio * tileRes / 2); vertex(tileRes, -HEIGHT); vertex(tileRes, 0); vertex(tileRes / 2, ratio * tileRes / 2); vertex(tileRes / 2, -HEIGHT + ratio * tileRes / 2); endShape(); popMatrix(); } boolean displayTimed() { if(cur_time >= prep_time) return true; noStroke(); fill(c); rect(5, 5, 15, 15); fill(200, 0, 0, 200); rect(0, 0, 25, 25 * cur_time / prep_time); stroke(150); strokeWeight(3); noFill(); rect(0, 0, 25, 25); cur_time++; return false; } }