Используя cocos2d, я пытаюсь заменить спрайт (элемент в моем коде) системой частиц. Этот код помещается в мой класс платы. Это один работает:Помещение частиц в узел
// Draw the particles
CCParticleSystem *particles = [[CCParticleSystem alloc] initWithDictionary:_popParticles];
particles.position = ccpSub(item.position,ccp(160,160));
particles.autoRemoveOnFinish = TRUE;
[self addChild:particles];
Это один не делает:
// Draw the particles
CCParticleSystem *particles = [[CCParticleSystem alloc] initWithDictionary:_popParticles];
particles.position = item.position;
particles.autoRemoveOnFinish = TRUE;
[self addChild:particles];
Я попытался плеер с этим, но без успеха:
particles.positionType = CCPositionTypeMake(CCPositionUnitUIPoints, CCPositionUnitUIPoints, CCPositionReferenceCornerBottomLeft);
Мой совет является 320х320 точек CCSprite с узловой точкой установить на 0,5, 0,5
Когда я регистрирую свое значение item.position, я получаю что-то относительно нижнего левого угла моей доски (от 30,30 до 290,290)
Использует ccpSub правильный путь?
Что означает «не работает»? Что такое self.positionType? завершено ли 'onEnter'? что такое 'self.contentSizeInPoints'? – YvesLeBorg
«не работает» означает, что положение частиц не соответствует положению «предмета предмета», который я хочу заменить (это 160 пикселей, 160 пикселей в верхнем правом углу позиции позиции). onEnter завершен, self.contentSizeInPoints = {0, 0}. Я не знаю, как записывать self.positionType :( –
ok, тогда вы можете добавить частицы в «item», а не в board (self)? Я предполагаю, что это происходит для CCNode. – YvesLeBorg