Objective C Cocos2d在对象之间创建引用

时间:2014-07-27 23:01:41

标签: objective-c cocos2d-iphone

我对目标c很新,我有一个简单的问题。我正在制作一个iPhone应用程序,我会定期调用一种方法来制造3个障碍。

-(void)createObstacles{
    for(int i = 0;i < 3;i++){
        CGPoint groundWorldPosition = [_physicsNode convertToWorldSpace:self.position];
        CGPoint groundScreenPosition = [self convertToNodeSpace:groundWorldPosition];
        Obstacle *_obstacle = (Obstacle *) [CCBReader load:@"Obstacle"];
        _obstacle.position = ccp(-groundScreenPosition.x + 3 * screenSize.width + arc4random()%100,groundScreenPosition.y + arc4random()%900 + 100);
        [_physicsNode addChild:_obstacle];
    }
}

每当我创造一个障碍物时,我都想在屏幕的侧面创建一个警告标签,指出障碍物即将到来。我有一个Label的自定义类。我遇到的问题是我需要根据相应障碍物的位置更新标签的不透明度。所以我的问题是如何为每个障碍添加警告标签,并且在更新方法中能够根据其相应障碍物的位置更新每个警告标签的不透明度。谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

首先,为你的障碍使用数组,这样你就不会丢失它的参考。 您可以将自定义标签放在Obstacle Class中,然后您将知道并将其添加到场景中。

所以你需要像...这样的东西。

在更新方法中,检查阵列中的障碍物,查看障碍物位置并更新障碍物内的标签不透明度。

希望有所帮助:)