模拟雨

Tho*_*ard 10 java paintcomponent

我正在用java制作游戏,我想创建一个倾盆大雨的模拟.云应该在下雨时向右移动.移动云是没有问题的.这是我正在努力的下雨.

我想要做的是使用计时器绘制一个矩形,这应该看起来像是在云中的随机x值下雨.然后每100毫秒将下降的y值加1.但我不想为每次降雨创建100个不同的矩形,x变量和y变量.

知道我怎么能做到这一点?建议赞赏!


这是一场2D游戏..对不起.

dan*_*dle 2

我建议将值存储为对象的 ArrayList。

class Raindrop {
    private int x;
    private int y;

    public void fall() {
        y--;
    }
}
Run Code Online (Sandbox Code Playgroud)

然后创建一个具有泛型类型的 ArrayList。

ArrayList<Raindrop> drops = new ArrayList<Raindrop>();
Run Code Online (Sandbox Code Playgroud)

为了让每一滴水滴落下,

for (int i=0; i<drops.length(); i++) {
    drops.get(i).fall();
}
Run Code Online (Sandbox Code Playgroud)