1 回答

TA貢獻(xiàn)1982條經(jīng)驗 獲得超2個贊
據(jù)我了解,您可以使用隨機(jī)生成器來決定該圖塊在運(yùn)行時是否是炸彈。這樣做你無法真正知道你的游戲中有多少個地雷。我認(rèn)為你應(yīng)該在游戲開始時決定地雷的數(shù)量,并將它們隨機(jī)放置到你的游戲板上(你可以根據(jù)難度級別選擇數(shù)量)。
編輯
您可以創(chuàng)建一個包含一些包含地雷的隨機(jī)點的列表
int numOfMines = 10;
int rows=5,columns=5;
ArrayList listWithMines = new ArrayList();
while(listWithMines.size()<numOfMines) {
int randRow = random.nextInt(rows);
int randCol = random.nextInt(columns);
Point point = new Point(randRow, randCol);
if(listWithMines.contains(point))
continue;
else
listWithMines.add(point);
}
該列表現(xiàn)在包含有地雷的點。您可以檢查 Point(x,y) 是否有礦井,如下所示:
if(listWithMines.contains(new Point(1, 2))) {...}
您可以使用 2D 數(shù)組代替列表,存儲布爾值(如果存儲更多狀態(tài),則存儲 int)并進(jìn)行循環(huán),直到放置 10 個地雷。您應(yīng)該保留您放置的地雷的計數(shù)器(placedMines,如 list.size()),并確保您不會將地雷添加到已經(jīng)有地雷的圖塊中,并增加計數(shù)器(placedMines)直到它達(dá)到地雷數(shù)量。
添加回答
舉報