我对JS不太了解,但是我必须做一些作业。现在我有一个球从屏幕的一侧弹到另一侧。每次弹跳时,屏幕的颜色和球都会改变。但是我也希望每次弹跳时都会稍微提高速度(或者,如果更容易,每次弹跳时都会随机增加一个速度)。这是我现在要移动,弹跳和更改颜色的代码:

    fill(r,g,b);
    ellipse(circleX, circleY, circleSize, circleSize);

    circleX += moveX;

    if (circleX > width - circleSize / 2 || circleX < circleSize / 2) {
            moveX = -moveX;
            r = random(255);
            g = random(255);
            b = random(255);
        }


moveX现在始终为5,转回时更改为-5。但是我想如果它变成-6然后再前进时变成+7。或至少类似的东西。
在此先感谢你们对我的帮助,请像向孩子解释时向您解释。

最佳答案

您需要在碰撞检测代码中添加另一个测试,以提高速度。如果速度为正,那么您想加1。如果速度为负,您想减去1。您的代码看起来像这样...

...
moveX = -moveX
if (moveX < 0) {
  --moveX;
} else {
  ++moveX;
}
...

09-17 15:48