我为Android制作了一个简单的突破游戏,当球到达横杆时(桨),我遇到了一些问题。球,酒吧都是位图。 x,y是球的位置,bx和by是杆(桨)的位置。 speedX和speedY是球的速度。这不是一个非常好的解决方案。我在哪里可以更改代码?
if (y + ball.getHeight() >= c.getHeight()
- (10 + bar.getHeight())
&& (x + ball.getWidth() / 2) >= bx - bar.getWidth() / 2
&& (x + ball.getWidth() / 2) <= bx + bar.getWidth() / 2) {
mp.start();
xdirection = (((x + ball.getWidth()) / 2) - ((bx + bar
.getWidth())) / 2) / (bar.getWidth() / 2);
speedY = -speedY;
speedX = (speedX) * Math.abs(xdirection);