0
我一直在研究一个小平台,并决定尝试新的碰撞检测。我遵循了ray wenderlich关于如何制作iOS平台游戏的教程,并提出了一些问题。在教程中,它设置为支持特定的图块大小,我想知道如何正确修改它以支持80x80的图块大小。这是用来获取瓦片坐标和边界框的方法。如何支持较大的瓷砖
- (CGPoint)tileCoordForPosition:(CGPoint)position
{
float x = floor(position.x/map.tileSize.width);
float levelHeightInPixels = map.mapSize.height * map.tileSize.height;
float y = floor((levelHeightInPixels - position.y)/map.tileSize.height);
return ccp(x, y);
}
-(CGRect)tileRectFromTileCoords:(CGPoint)tileCoords
{
float levelHeightInPixels = map.mapSize.height * map.tileSize.height;
CGPoint origin = ccp(tileCoords.x * map.tileSize.width, levelHeightInPixels - ((tileCoords.y + 1) * map.tileSize.height));
return CGRectMake(origin.x, origin.y, map.tileSize.width, map.tileSize.height);
}
多数民众赞成我所认为的,但每当我加载一个瓷砖地图以外提供它会导致崩溃。这可能与点击检测有关。 – user1569940
如果发生崩溃,那么这就是你应该询问的问题。不要假设它会是什么,只会浪费你的时间。专注于崩溃及其发生的原因。 – LearnCocos2D