1 回答
TA贡献1982条经验 获得超2个赞
据我了解,您可以使用随机生成器来决定该图块在运行时是否是炸弹。这样做你无法真正知道你的游戏中有多少个地雷。我认为你应该在游戏开始时决定地雷的数量,并将它们随机放置到你的游戏板上(你可以根据难度级别选择数量)。
编辑
您可以创建一个包含一些包含地雷的随机点的列表
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);
}
该列表现在包含有地雷的点。您可以检查 Point(x,y) 是否有矿井,如下所示:
if(listWithMines.contains(new Point(1, 2))) {...}
您可以使用 2D 数组代替列表,存储布尔值(如果存储更多状态,则存储 int)并进行循环,直到放置 10 个地雷。您应该保留您放置的地雷的计数器(placedMines,如 list.size()),并确保您不会将地雷添加到已经有地雷的图块中,并增加计数器(placedMines)直到它达到地雷数量。
添加回答
举报