用Java创建平铺地图

时间:2014-03-20 00:26:09

标签: java game-engine

我想知道如何在java中制作基于tile的地图。我想制作一个基本的2d平台型或自上而下型。我已经研究过了,但没有人帮助过多。然而,我所学到的是我必须制作瓷砖对象和二维矩阵来存储瓷砖的位置。

此外,互联网上还有许多程序可用于制作地图。我不想使用它们。

1 个答案:

答案 0 :(得分:1)

您可以使用二维数组来存储地图图块,如此,

int[][] map =
{
{1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
};

然后访问您的地图位置,例如map[1][1]。或者更改map[0][0] = 1。

等变量

您可能更愿意使用循环来生成0,或1或者您想要的瓷砖,而不是写出整个数组。

喜欢这样,

int[][] tileMap = new int[10][10];

for(int i = 0; i < tileMap.length; i++) {
    for(int j = 0; j < tileMap[0].length; j++) {
       tileMap[i][j] = 0;//put whatever number you want in 
       //here and it will insert it instead of 0's
  }
}