cocos2d 45度角地图，求地图上精灵当前 位置所在的地图序列

Preate轩
Mon, 16 Jul 2012 09:18:06 +0000

//将地图坐标转换成格子坐标
CCPoint BattleField::mapPosToTilePos(float x,float y)
{
int map_width = _tmxMap->getMapSize().width;
int map_height = _tmxMap->getMapSize().height;

int tile_width   =  _tmxMap->getTileSize().width;
int tile_height  =  _tmxMap->getTileSize().height;

float pos_x = map_height + x/tile_width - y/tile_height - map_width/2 - 0.5f;

float pox_y = map_height - x/tile_width - y/tile_height + map_width/2 - 1.5f;

return ccp(pos_x,pox_y);

}

传入地图坐标就能得出格子的坐标 希望对你有帮助。

阅读整个主题