私が立ち往生している私を助けてください:
-(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];