Jump to content
  • Advertisement
Sign in to follow this  
  • entries
    55
  • comments
    55
  • views
    24789

Birds Flew Backwards

Sign in to follow this  
AEdmonds

138 views

So I haven't managed to finish Two Player Pong today but I did manage to get scores working, a regulated frame rate and producing a new ball when the old one goes out of play (now that I've listed what I've done it doesn't sound like a lot [lol]).

Unfortunately, I have a bug which occurs when one of the paddles 'lands' on the ball, if you see what I mean. I think its got something to do with me not reversing the y velocity but I don't know where to put it.Can anybody help? I'll also have a think for myself at work. Here's the code:


// Check if the ball hits player one
if (ball_top < player_one_bottom &&
ball_bottom > player_one_top &&
ball_right > player_one_left &&
ball_left < player_one_right)
{
// Reverse the x velocity
ball->ReverseVelX();
}

// Check if the ball hit player two
if (ball_top < player_two_bottom &&
ball_bottom > player_two_top &&
ball_right > player_two_left &&
ball_left < player_two_right)
{
// Reverse the x velocity
ball->ReverseVelX();
}



Anyway, I have a few days off work from tomorrow which should give me plenty of time to finish Two Player Pong and get started on my Breakout clone.

-AEdmonds
Sign in to follow this  


2 Comments


Recommended Comments

Is it possible that after you reverse the velocity, the ball is still "inside" the bat, so next frame it gets its X velocity reversed again, and so on and so on?

If player 1 is always on the left and player 2 on the right, I'd try setting the ball X velocity to +1 for player 1 collisions and -1 for player 2 collisions explicitly.

The alternative is, when you get a ball collision, to move the ball out of the bat at the point you detect the collision (e.g. for player 1, set ball_left to equal player_right+1 or whatever).

HTH

Share this comment


Link to comment
Yes I found that (after changing its colour) the ball seemed to be bouncing inside the paddle. Thanks for the suggestions, I will try them out tomorrow.

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!