Pong paddle collision testing
Hi, I'm pretty new to game development and I've been working on a simple pong game. Everything pretty much works except that I can't get my paddles to stop at the top and bottom edges. Heres my code:
(In class Paddle)
publicvoid paddleMove(){
y_pos += y_speed;
}
publicvoid paddleCollision(Paddle paddle){
//test for paddle edge collisions
if(paddle.getYPos() <= 0){
paddle.y_speed = 0;
}
elseif(paddle.getYPos() + HEIGHT >= SCREENHEIGHT){
paddle.y_speed = 0;
}
}
Heres the code for keyboard input
(In class Pong2)
publicboolean keyDown (Event e,int key){
if (key =='w' || key =='W'){
paddle1.y_speed = -10;
paddle1.paddleMove();
paddle1.paddleCollision(paddle1);
}
elseif (key =='s' || key =='S'){
paddle1.y_speed = 10;
paddle1.paddleMove();
paddle1.paddleCollision(paddle1);
}
if(key == Event.UP){
paddle2.y_speed = -10;
paddle2.paddleMove();
paddle2.paddleCollision(paddle2);
}
elseif(key == Event.DOWN){
paddle2.y_speed = 10;
paddle2.paddleMove();
paddle2.paddleCollision(paddle2);
}
returntrue;
}
publicboolean keyUp (Event e,int key){
if (key =='w' || key =='W'){
paddle1.y_speed = 0;
paddle1.paddleMove();
}
// rechte Cursortaste
elseif (key =='s' || key =='S'){
paddle1.y_speed = 0;
paddle1.paddleMove();
}
elseif(key == Event.UP){
paddle2.y_speed = 0;
paddle2.paddleMove();
}
elseif(key == Event.DOWN){
paddle2.y_speed = 0;
paddle2.paddleMove();
}
returntrue;
}
I'm pretty sure the problem is in my paddleCollision() method but I cant find the logic error.
Thanks in advance for any help
titleofliberty

