Rectangle not moving

here is a version more clean in terms of OOP


Paddle p1;
Paddle p2;
//Ball b;

//--------------------------------------------------------

void setup() {
  size(600, 600);

  p1 = new Paddle(20, height/2 - 50);
  p2 = new Paddle(width - 30, height/2 - 50);
  // b = new Ball();
} // func

void draw() {
  background(0);

  p1.show();
  p1.move();

  p2.show();
  p2.move();

  //b.show();
} // func

//--------------------------------------------------------

void keyPressed() {
  if (key == 'w') {
    p1.goUp = true;
  }
  if (key == 's') {
    p1.goDown = true;
  }
  if (keyCode == UP) {
    p2.goUp = true;
  }
  if (keyCode == DOWN) {
    p2.goDown = true;
  }
} // func

void keyReleased() {
  if (key == 'w') {
    p1.goUp = false;
  }
  if (key == 's') {
    p1.goDown = false;
  }
  if (keyCode == UP) {
    p2.goUp = false;
  }
  if (keyCode == DOWN) {
    p2.goDown = false;
  }
} // func

//=================================================================

class Paddle {

  float x = 0; // Pos 
  float y = 0;

  boolean goUp = false;   // Flags for up/down
  boolean goDown = false;

  Paddle(float tempX, float tempY) {
    x = tempX;
    y = tempY;
  } // constr 

  void show() {
    stroke(255);
    fill(255);
    rect(x, y, 
      10, 100);
  } // func

  void move() {
    if (goUp) {
      y -= 4;
    } else if (goDown) {
      y += 4;
    }
  } // func
  //
} //class
//
1 Like