// The basic ball class...
class ball {
// Attributes float radius; // size float x, y; // location color ballColor; float dx = 1; float dy; float speed = 5.0; float gravity = 0.1; float dampen = -0.9;
// Constructor(s) ball() { radius = 25; x = random(width); y = random(height); ballColor = color(59, 90, 255); //dx = random(-3, 3); dy = random(-3, 3); } // ball()
ball(float r, color c) { radius = r; x = random(width); y = random(height); ballColor = c; //dx = random(-3, 3); dy = random(-3, 3); } // ball()
ball(float _x, float _y, float _r, color _c) { x = _x; y = _y; radius = _r; ballColor = _c; dy = random(-3, 3); } // ball() // Behaviors void display() {
// display the ball object noStroke(); fill(ballColor); ellipse(x, y, 2*radius, 2*radius); } // display()
// move the ball void move() { x += dx; y += speed; speed = speed + gravity;
bounce(); // check bounces } // move()
void bounce() { if (x < radius) { x = radius; dx = -dx; }
if (x > width-radius) { x = width-radius; dx = -dx; }
if (y < radius) { y = radius; dy = -dy; }
if (y > height - radius) { y = height-radius; dy = -dy; speed = speed*dampen; } } // bounce() } // class ball