请帮助我,我陷入困境:
我正在通过 - (void)ccTouchMoved:(UITouch *)touch withEvent:(UIEvent *)event 移动 Sprite
在40X30图 block 大小的图 block map 上,我想获取我的 Sprite 当前停止的图 block 位置,并将该 Sprite 设置在该图 block 上,就像单词史密斯游戏一样。
提前致谢
最佳答案
如果 TILES_X
和 TILES_Y
是 map 上水平和垂直图 block 的数量,则类似以下内容应该可以解决问题:
编辑:添加了 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];
关于ios - 获取拖动 Sprite 所在的图 block 位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14870087/