CCParticleSnow не зацикливается / повторяется.
Я написал этот код.
CCSpriteFrame *starParticleFrame = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:spriteName];
CCParticleSnow *emitter = [[CCParticleSnow alloc] initWithTotalParticles:8];
[emitter setTexture:[starParticleFrame texture] withRect:[starParticleFrame rect]];
emitter.position = ADJUST_XY(theScreenSize.width/2, 3*theScreenSize.height/4);
emitter.scale = HD_PIXELS(1.5);
emitter.speed = 20 + arc4random() %20;
[emitter setDuration:kCCParticleDurationInfinity];
//[emitter setGravity:CGPointMake(0, -150)];
[self addChild: emitter z:-1];
Оно работает. Но проблема в том, что он просто разжигает снег, а не непрерывно. (в данном случае вышло всего 8 частиц и все)
Тем не менее, если я обменяю 2-ю строку кода в
CCParticleSnow *emitter = [CCParticleSnow node];
тогда система частиц способна непрерывно вращаться. Я прочитал документы и погуглил об этом, но безрезультатно. Последняя попытка состояла в том, чтобы поместить эту длительность в kCCParticleDurationInfinity. Но все еще не работает.
Помоги мне, пожалуйста.
1 ответ
Решение
Вы ограничиваете излучатель до 8 частиц. Он будет порождать новые частицы только после того, как начальные 8 исчезнут.