Я делаю игру с cocos2d, и у меня есть куча спрайтов, которые я хотел бы удалить. Например, у меня может быть несколько персонажей на экране, но когда моя игра закончится, я бы хотел их убрать. Прямо сейчас я создал специальный эффект (систему частиц) как отвлечение, но потому что он прозрачен и не покрывает весь экран, через который вы можете видеть и наблюдать, как спрайты исчезают, когда я удаляю их со слоя.
Кроме того, поскольку инструкции выполняются для пользователя так быстро, создается впечатление, что спрайты исчезают до того, как начинается эффект частиц!
Есть предложения по моим 2 проблемам? Спасибо.
NSMutableArray *toRemove = [[NSMutableArray alloc] init]; // array of sprites that I collect to remove
spriteCount = 0;
if([self findAllSprites:parent forRemoval:toRemove] > 0){ // is there is at least one sprite to delete. If not then don't do anything
[self specialEffect]; // runs for maybe 3 seconds.
// how can I stall here so that the sprites aren't removed "instantaneously"?
for (Character* aCharacter in toRemove) {
[aCharacter.parent remove:aCharacter];
}
}