我一直在开发一个小型平台游戏,并决定尝试新的碰撞检测。我遵循了 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);
}