Функция не вызывается - PullRequest
       5

Функция не вызывается

0 голосов
/ 01 октября 2011

Я получил подкласс CCNode, и он в конечном итоге вызывает функцию, расположенную на его родительском объекте.Во-первых, мой класс сделает это:

-(void)getTargetPosition {
    Battle *myParent = (Battle *)self.parent;
    position = [myParent getTargetPosition:@"ENEMY"];
}

Где Battle - родитель (CCLayer).

А вот код для функции getTargetPosition в родительском:

-(CGPoint)getTargetPosition:(NSString*)target {
    NSLog(@"I AM RUNNING");
    CGPoint position;
    if ([target isEqualToString:@"ENEMY"]) {
        position = ccp(400,250);
    }else if ([target isEqualToString:@"ALLY"]) {
        position = ccp(240,160);
    }
    return position;
}

Но есть такая проблема: getTargetPosition по некоторым причинам никогда не вызывается.Я могу сказать, поскольку NSLog «Я бегу» никогда не отображается.

Есть идеи, почему этот метод не работает?

Все функции уже объявлены в файле .h.XCode не выдает никаких предупреждений / ошибок.

1 Ответ

2 голосов
/ 01 октября 2011

Является ли self.parent (и, следовательно, myParent) нулем? Тогда метод не будет вызван.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...