我尝试了许多不同的方法,但是我无法使它起作用。我想创建一个移动平台,该平台从左到右然后从右到左缓慢移动。我得到了从左到右的部分,但没有从右到左的部分。这是我从左到右使用的:

public int centerX = 650;
public int centerY = 382;

private int speedX  = 2;


    if(centerX + speedX >= 765){
        centerX = 650;
        speedX = -2;
    }else{
        centerX += speedX;
    }


这使平台直接回到起点。为什么呢如何添加以及如何添加使其缓慢返回?

最佳答案

在循环中,您将centerX分配回650,这就是导致它跳回的原因。

只需将速度设置为-2,然后检查速度是否小于650,如果确实将其设置为+2

然后,平台应向后和向前反弹。

10-08 06:48