首先,定义两个一维数组,保存雪花坐标以及一个一维数组保存雪花大小既Rect的尺寸:
static int snowx[] = new int[20];//这里将屏幕中出现的雪花数量设置为20
static int snowy[] = new int[20;
static int snowSize[] = new int[20];//雪花的大小
接下来就是初始化雪花数组了:
我们先来个一个随机数字生成函数,主要是生成雪花的坐标,当然坐标是不能在屏幕外的:
public int random(int i)
{
int j;
for(j = r.nextInt() % i; j < 0; j = r.nextInt() % i);
return j;
}
初始化雪花了:
public void initSnow()
{
for(int i = 0; i < 20; i++)
{
snowx[i] = random(getWidth()); //生成X坐标
snowy[i] = random(getHeight()); //生成Y坐标
snowSize[i] = random(3) + 1; //雪花的大小
}
}
最后就是雪花的绘制了
public void snowPaint(Graphics g)
{
for(int i = 0; i < 20; i++)
{
g.setColor(255, 255, 255); //当然是白雪花了
g.fillRect(snowX[i], snowY[i], snowSize[i], snowSize[i]);
}
}
完成了,只要不断改变雪花的坐标,就可以在游戏中实现简单的雪花飞舞效果。
[www.mobilercn.com 移动频道 转载请注明出处]