【发布时间】:2015-05-28 01:13:15
【问题描述】:
我有一个包含以下变量的球类:
int x,y,width,height;
double velX,velY;
我想做到这一点,以便每当球击中障碍物时,它会反弹并失去一些速度。
//Gravity & movement for the ball
ball.setVelY(ball.getVelY() + 0.2);
ball.setY((int)(ball.getY() + ball.getVelY()));
//Make the ball bounce.
if(ball.getBounds().intersects(block.getBounds()){
ball.setVelY(ball.getVelY() * -0.7);
}
我认为这会使球缓慢反弹,直到大麦完全移动(我会对此进行测试,然后让球完全停止),但事实并非如此。球会正常弹跳几次,每次弹跳都比前一次小。然而,在几次反弹之后,球将停止反弹,低于之前的反弹。为什么会这样?我应该怎么做才能解决它?
【问题讨论】: