#animation #cocos2d-iphone
#Анимация #cocos2d-iphone
Вопрос:
В начале игры я пытаюсь анимировать падение 41 кирпича в сетку размером 6×7 от верхней части экрана, но пока мне только что удалось заставить кирпичи падать в одном и том же положении. Если я удалю часть анимации, все кирпичи появятся в сетке. Кирпичи должны падать через миллисекунду или две после предыдущего кирпича, чтобы создать эффект шагов.
Я знаю, что проблема в позиции, но я не знаю, как это исправить.
-(void)AnimateBricksFalling
{
self.allowTouch = NO;
for(int i =0; i< GRID_WIDTH ; i )
{
for(int j =0; j< GRID_HEIGHT ; j )
{
Bricks * d = grid[i][j];
d.mySprite.position = ccp(168,1000); //the position is the issue, making all the bricks to fall down to the same position
CCMoveTo *move = [CCMoveTo actionWithDuration:0.5 position:ccp(168,91)]; //the position is the issue, making all the bricks to fall down to the same position
[d.mySprite runAction: move];
}
}
}
Ответ №1:
вы можете использовать задержку для каждого кирпича, что-то вроде этого
[d.mySprite runAction: [d.mySprite runAction: [Sequence actions:
[DelayTime actionWithDuration: waitTime],
[CCMoveTo actionWithDuration:0.5 position:ccp(168,91)],
nil]]];
А затем создайте случайное время и установите его в переменную WaitTime.
Затем каждый вызов будет перемещать один кирпич, затем подождите и сделайте это снова.
Надеюсь, это поможет!