// Global Variables
float pad1y = 300;
float pad1x = 100;
float padWidth = 25;
float padHeight = 125;
float pad2y = 300;
float pad2x = 700;
// these variables control motion
boolean pad1Up = false;
boolean pad1Down = false;
boolean pad2Up = false;
boolean pad2Down = false;
// these variables store the puck's x and y position
float puckX;
float puckY;
// these variables determine the speed of the puck's motion
float yvel = -3;
float xvel = -1;
void setup() {
size(800, 600);
rectMode(CENTER);
// set puckX to half of the screen width
puckX = width/2;
// set puckY to half of the screen height
puckY = height/2;
}
void draw() {
background(0);
strokeWeight(12);
stroke(255);
fill(0);
line(width/2, 0, width/2, height);
ellipse(width/2, height/2, 120, 120);
noStroke();
fill(0, 255, 0);
rect(pad1x, pad1y, padWidth, padHeight);
rect(pad2x, pad2y, padWidth, padHeight);
if(pad1Up == true) {
pad1y -= 5;
}
if (pad1Down == true) {
pad1y += 5;
}
if (pad2Up == true) {
pad2y -= 5;
}
if (pad2Down == true) {
pad2y += 5;
}
if (pad1y < padHeight/2) {
pad1y = padHeight/2;
}
if (pad1y > height - (padHeight/2)) {
pad1y = height - (padHeight/2);
}
if (pad2y < padHeight/2) {
pad2y = padHeight/2;
}
if (pad2y > height - (padHeight/2)) {
pad2y = height - (padHeight/2);
}
ellipse(puckX, puckY, 25, 25);
puckX += xvel;
puckY += yvel;
if(puckY > (height - 25)){
yvel = -yvel;
} if(puckY < 25){
yvel = -yvel;
}
}
void keyPressed() {
if (key == 'w') {
pad1Up = true;
}
if (key == 's') {
pad1Down = true;
}
if (keyCode == UP) {
pad2Up = true;
}
if (keyCode == DOWN) {
pad2Down = true;
}
}
void keyReleased() {
if (key == 'w') {
pad1Up = false;
}
if (key == 's') {
pad1Down = false;
}
if (keyCode == UP) {
pad2Up = false;
}
if (keyCode == DOWN) {
pad2Down = false;
}
}