Определите, вращается ли CCLayer в данный момент
Я вращаю экземпляр CCLayer
подкласс, как это:
[self runAction:[CCRotateBy actionWithDuration:0.5 angle:180.0]];
Это вращение происходит в ответ на нажатие пользователем (которое может произойти быстро). Как я могу определить, вращается ли слой в данный момент? В этом случае я могу просто игнорировать кран.
1 ответ
Решение
При объявлении CCAction можно установить для него атрибут тега, а затем получить действие с помощью getActionByTag. Если возвращаемое значение не равно nil, то это означает, что действие действительно выполняется.
CCRotateBy *rotate = [CCRotateBy actionWithDuration:1.0 angle:100];
rotate.tag = 100;
[myNode runAction:rotate];
if ([myNode getActionByTag:100]) {
NSLog(@"Rotating!!");
}