COCOS2D: как оживить падающие кирпичи в сетку - PullRequest
0 голосов
/ 03 октября 2011

Я пытаюсь в начале игры анимировать 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 Ответ

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

вы можете использовать Задержку для каждого кирпича, что-то вроде этого

 [d.mySprite runAction: [d.mySprite runAction: [Sequence actions:
[DelayTime actionWithDuration: waitTime],
[CCMoveTo actionWithDuration:0.5 position:ccp(168,91)],
nil]]];

И затем создать случайное время и установить его для переменной waitTime.Затем каждый вызов будет перемещать один кирпичик, затем ждать и делать это снова.

Надеюсь, это поможет!

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