1
내 캐릭터 스프라이트의 픽셀 좌표를 그리드 좌표로 변환하여 사용자가지도에서 특정 타일을 터치하는지 확인할 수 있도록하려고합니다. 문자 위치가 바로 그리드 좌표와 제대로 일치하지 않는 몇 가지 이유를 들어CCTMXTiledMap의 픽셀을 그리드로 변환
CGPoint mappos = [tileMapNode convertToNodeSpace:position];
mappos.x = (int) mappos.x/tileWidth;
mappos.y = (int) mappos.y/tileWidth;
CCTMXLayer *metaLayer = [tileMapNode layerNamed:@"Meta"];
CCSprite *metaTile = [metaLayer tileAt:ccp(mappos.x, mappos.y)];
if (metaTile)
{
NSLog(@"HIT!");
}
:
여기 내 코드입니다. 왜 그런가요?
나는 그것을 – Sneaksta
은 '자기'매개 변수는 'getTileCoordForPosition'기능의 코드 무엇을 참조하고 :) 몇 시간 만에 갈 줄거야? 내게는 '자기'를 내 CCTMXTiledMap 변수로 바꿔야합니다. 비록 내가 그렇게해도 좌표는 여전히 작동하지 않는다. – Sneaksta
그렇다. 그것이 CCTMXTiledMap 객체이다. – Guru