表示通过由6
2D阵列表示8
表示7
表示的-1是空的区域,并0草满
这是代码我正在使用渲染视图
//map class
private int[][] terrain = new int[20][20];
}
//constructor
protected Drawable[] tiles = new Drawable[10];
tiles[GameMap.GRASS] = getResources().getDrawable(R.drawable.grass);
tiles[GameMap.GRASS_WU] = getResources().getDrawable(R.drawable.grass_wu);
tiles[GameMap.GRASS_WD] = getResources().getDrawable(R.drawable.grass_wd);
tiles[GameMap.GRASS_EU] = getResources().getDrawable(R.drawable.grass_eu);
tiles[GameMap.GRASS_ED] = getResources().getDrawable(R.drawable.grass_ed);
protected void onDraw(Canvas canvas) {
//move_Unit();
for (int x=0;x<map.getWidthInTiles();x++) {
for (int y=0;y<map.getHeightInTiles();y++) {
if(map.getTerrain(x,y) != -1){
tiles[map.getTerrain(x,y)].setBounds(x*16,y*16,(x*16) + 16,(y*16) + 16);
if (map.getUnit(x,y) != 0) {
tiles[map.getUnit(x,y)].setBounds(x*16,y*16,(x*16) + 16,(y*16) + 16);
}
tiles[map.getTerrain(x, y)].draw(canvas);
tiles[map.getUnit(x, y)].draw(canvas);
}
}
}
}
}
为什么我的视图显示为像这样以及如何修复它?
是的,我做了简单的但我放弃它,因为它专注于iPhone,但你的链接似乎也涵盖了Android。让我仔细看看谢谢! – kimlexson 2011-03-13 23:17:57
'cocos2d-x'是'cocos2d-iphone'的一个C++端口:) – Macarse 2011-03-13 23:22:11
http://www.raywenderlich.com/1163/how-to-make-a-tile-based-game-with-cocos2d – kimlexson 2011-03-14 00:12:06