-(CCNode *)createFieldNode:(NSMutableArray *)fieldArray{
CGSize winSize = [CCDirector sharedDirector].viewSize;
CCNode* stackNode= [CCNode node];
for (int i; i <=fieldArray.count; i++){
//itemP is previous item in array and itemC is current item in area based on index i
BPItem*itemP;
BPItem*itemC;
if(i!=0){
itemP=[fieldArray objectAtIndex:i-1];
itemC=[fieldArray objectAtIndex:i];
float stackWidth=arc4random()%200+50;
float stackHeight=itemP.position.y+itemP.contentSize.height;
itemC.position=ccp(stackWidth,stackHeight);
}
else{
itemC=[fieldArray objectAtIndex:i];
float stackWidth=arc4random()%200+50;
itemC.position=ccp(stackWidth,0);
}
//having trouble adding multiple nodes to stackNode
[stackNode addChild:itemC];
}
return stackNode;
}
Я хочу добавить CCNodes из fieldArray в родительский CCNode «stackNode». Когда я использую точки останова, я могу добавить CCNode с индексом 0 и CCNode в индекс 1. Однако сбой программы при i = 2. Ошибка, которую я получаю:Добавить CCNodes в родительский CCNode, используя цикл for
Завершение приложения из-за неперехваченного исключения «NSInternalInconsistencyException», причина: «ребенок уже добавлен в другой узел. Он не может быть добавлен снова '
Перед сбоем «stackNode» имеет двух детей. Я не добавляю CCNodes один за другим, потому что у меня есть сотни разных массивов с большим количеством полей. Я могу объяснить, если я был неясен.