Обновление Cocos2d: (ccTime) dt дает испорченные значения - PullRequest
2 голосов
/ 18 февраля 2011

Внутри класса, который подклассов CCNode, я запланировал метод -update:(ccTime)dt. У меня также есть куча объектов поведения, которые не имеют подкласса CCNode, но также имеют метод -update:(ccTime)dt. Вот мой метод CCNode update внутри:

-(void)update:(ccTime)dt{
    for(Behavior *currentBehavior in behaviors){
        [currentBehavior update:dt];
    }
}

Когда I NSLog значение dt передается в update моего CCNode, оно выводит нормальные значения (0,116699, 0,162726). Однако, когда я NSLog значение dt из методов поведения update, напечатанные числа внезапно действительно облажались (0,000, 36893488147419103232, -2,000). Это самая странная вещь. Когда я отлаживаю его, я вижу, что первое значение dt является нормальным, и затем я войду в update поведения, и значение внезапно изменится на что-то сумасшедшее. Что происходит?

1 Ответ

0 голосов
/ 18 февраля 2011

Я понял это.У меня не было -update:(ccTime)dt в файле .m моего класса поведения, и моя теория состоит в том, что компилятору потребовалось дополнительное время, чтобы найти селектор метода, который поэтому облажался ccTime.

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