请帮助我,我被困在:
我正在通过 - (void)ccTouchMoved:(UITouch *)touch withEvent:(UIEvent *)event 移动精灵
在 40X30 瓷砖尺寸的瓷砖地图上,我想获取我的精灵当前停止的瓷砖位置,并将该精灵设置在该瓷砖上,就像文字史密斯游戏一样。
提前致谢
请帮助我,我被困在:
我正在通过 - (void)ccTouchMoved:(UITouch *)touch withEvent:(UIEvent *)event 移动精灵
在 40X30 瓷砖尺寸的瓷砖地图上,我想获取我的精灵当前停止的瓷砖位置,并将该精灵设置在该瓷砖上,就像文字史密斯游戏一样。
提前致谢
如果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];