2014-07-27 3 views
0

Я довольно новичок в объективе c, и у меня есть простой вопрос. Я делаю приложение iphone, и я регулярно вызываю метод, чтобы создать 3 препятствия.Objective C Cocos2d создает ссылки между объектами

-(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]; 
    } 
} 

Каждый раз, когда я создаю препятствие, я хотел бы создать этикетку с предупреждением на стороне экрана, что препятствие наступающее. У меня есть специальный класс для ярлыка. Проблема, с которой я сталкиваюсь, заключается в том, что мне нужно обновить непрозрачность метки в соответствии с положением сопутствующего препятствия. Поэтому мой вопрос заключается в том, как я могу добавить предупреждающую метку для каждого препятствия, и в методе обновления можно обновлять каждую непрозрачность предупреждающих надписей в соответствии с положением соответствующего препятствия. Спасибо за любую помощь

ответ

0

Прежде всего, используйте массив для своих препятствий, чтобы вы не потеряли ссылку на него. Вы можете поместить свой собственный ярлык внутри класса Obstacle Class и тем, что вы будете знать и добавить в свою сцену.

Так что вам нужно что-то вроде ...

В способе обновления проверьте препятствие в массиве, смотрите положение препятствий и обновить непрозрачность метки в пределах преграды.

Надеюсь, что это поможет :)

Смежные вопросы