Retina在cocos2d iphone中显示tilemap碰撞检测

时间:2012-01-13 07:31:22

标签: cocos2d-iphone

我创建了两个不同的tilemap用于简单显示和视网膜显示。 简单的显示碰撞检测是正确的。当我在视网膜显示地图上正确测试时,但碰撞检测不正确。

任何人都可以帮助我。

1 个答案:

答案 0 :(得分:0)

在这里,我使用此功能检查碰撞,然后在两个显示器中都运行良好。

- (CGPoint)tileCoordForPosition:(CGPoint)position 
{
    CGFloat scale = [[UIScreen mainScreen] scale];
    NSLog(@"%f",map1.tileSize.height);
    int y = ((map1.mapSize.height * map1.tileSize.height) - position.y*scale) / map1.tileSize.height+(map1.position.y *scale/map1.tileSize.height);
    int x =-((map1.position.x *scale) / map1.tileSize.width)+(MainCharacter.position.x*scale/map1.tileSize.width);
    return ccp(x, y);
}