获取拖动精灵存在的平铺位置

时间:2013-02-14 07:48:47

标签: ios cocos2d-iphone

请帮助我,我被困在:

我正在移动一个精灵 - (void)ccTouchMoved:(UITouch *)touch withEvent:(UIEvent *)event

在40X30瓷砖尺寸的瓷砖地图上的

我想获得我的精灵当前停止的瓷砖位置,并在该瓷砖上设置该精灵,就像单词史密斯游戏一样。

提前致谢

1 个答案:

答案 0 :(得分:1)

如果TILES_XTILES_Y是地图上水平和垂直图块的数量,那么这样的事情应该可以解决问题:

编辑:已添加TILE_WIDTH& TILE_HEIGHT更正位置计算

CGPoint position = [sprite position];

// get x and y in tile coordinates
int xTile = position.x / TILES_X;
int yTile = position.y / TILES_Y;

// 'snap' position to tiles
position.x = xTile * TILE_WIDTH;
position.y = yTile * TILE_HEIGHT;
[sprite setPosition:position];