Кажется довольно простым и простым:
// use this to keep track of how many stones are destroyed,
// every time a stone is destroyed, increment it by 1
int count = 0;
Чтобы отобразить «комбо», вам нужно использовать графику или метку - это описано в примерах cocos2d, поэтому я не буду объяснять, как это отобразить здесь.
Отсюда, в вашем обратном вызове «tick», просто проверьте значение «count», если оно больше или равно «3» (вашему «магическому» номеру), затем запустите следующую последовательность действий на вашем «combo» "узел.
CCFadeIn *fadeIn = [CCFadeIn actionWithDuration: 0.25f];
CCFadeOut *fadeOut = [CCFadeOut actionWithDuration: 0.0125f];
CCDelayTime *delay = [CCDelayTime actionWithDuration: 0.5f];
[node runAction: [CCSequence actions: fadeIn, delay, fadeOut, nil];
Этот набор действий приведет к исчезновению узла более чем за четверть секунды, подождет полсекунды, а затем исчезнет за одну восьмую секунды. Вы можете настроить время, как необходимо, для вашего кода. Некоторые дополнительные действия, которые вы можете сделать, когда счетчик> 3, перемещает «комбинированный» текст в позицию последнего уничтоженного элемента или рандомизирует его положение, чтобы оно не всегда было в одном и том же месте и т. Д. *
Объект "узел" в примере кода - это CCSprite или CCLabel, который остается добавленным в вашу сцену, но просто переключает его видимость (так как этот элемент будет появляться на сцене чаще, чем "часто", лучше оставить его в сцене и измените его видимость, а не создавайте новый и уничтожайте его каждый раз - если это редкий предмет, просто создайте новый и уничтожьте его ...