请帮助我,我被困在:
我正在移动一个精灵 - (void)ccTouchMoved:(UITouch *)touch withEvent:(UIEvent *)event
在40X30瓷砖尺寸的瓷砖地图上的我想获得我的精灵当前停止的瓷砖位置,并在该瓷砖上设置该精灵,就像单词史密斯游戏一样。
提前致谢
答案 0 :(得分:1)
如果TILES_X
和TILES_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];