2010年4月8日 星期四

用亂數來產生小精靈中魔鬼的位置


我們利用亂數產生器來產生上下左右的方向值,用它來決定魔鬼的位置,下面程式中if內的判斷式是用來判斷魔鬼新的位置會在走道上。
for(int i=0; i<5; i++)
{
int dir = new Random().nextInt(4);
switch(dir)
{
case 0:
if(board[(int) (((y2[i]-mMonster[i].getHeight())-10)/mMonster[i].getHeight())][(int) ((x2[i]-10)/mMonster[i].getWidth())]==0)
y2[i]-=mMonster[i].getHeight();
break;
case 1:
if(board[(int) (((y2[i]+mMonster[i].getHeight())-10)/mMonster[i].getHeight())][(int) ((x2[i]-10)/mMonster[i].getWidth())]==0)
y2[i]+=mMonster[i].getHeight();
break;
case 2:
if(board[(int) ((y2[i]-10)/mMonster[i].getHeight())][(int) (((x2[i]+mMonster[i].getWidth())-10)/mMonster[i].getWidth())]==0)
x2[i]+=mMonster[i].getWidth();
break;
case 3:
if(board[(int) ((y2[i]-10)/mMonster[i].getHeight())][(int) (((x2[i]-mMonster[i].getWidth())-10)/mMonster[i].getWidth())]==0)
x2[i]-=mMonster[i].getWidth();
break;
}
}

沒有留言:

張貼留言