2013-05-28 2 views
0

Хотите добавить спрайтов динамически, используя для цикла как новичок в cocos2d я не могу понять этот вопрос, так пожалуйста, помогите мне выйти из этой ситуацииДобавление нескольких спрайтов динамически

вот мой код ..

rock = [CCSprite spriteWithFile:@"Rock.png"]; 
     [rock setPosition:ccp(240,80)]; 
     [self addChild:rock]; 
     for(int i=0;i<3;i++) 
     {    
      rock2 = [CCSprite spriteWithFile:@"Rock.png"]; 
      [rock2 setPosition:ccp(rock.position.x-70,rock.position.y+40)]; 
      [self addChild:rock2]; 
     } 

заранее.

+0

, что из положить вы получаете? 3 спрайта из цикла for будут перекрываться – Durgaprasad

+0

В настоящее время отображается только 2 спрайта –

+0

, как вы хотите выставить? 3 спрайт в строке за скалой? – Durgaprasad

ответ

0

попробовать это

int xpos, ypos; 
xpos = 70; 
ypos = 40; 
rock = [CCSprite spriteWithFile:@"Rock.png"]; 
     [rock setPosition:ccp(240,80)]; 
     [self addChild:rock]; 
     for(int i=0;i<3;i++) 
     {    
      rock2 = [CCSprite spriteWithFile:@"Rock.png"]; 
      [rock2 setPosition:ccp(rock.position.x-xpos,rock.position.y+ypos)]; 
      [self addChild:rock2]; 
      xpos = xpos + 70; 
      ypos = ypos + 40; 
     } 

XPos и ​​YPos изменения, как вам нужно

+0

спасибо, сэр это помогло .. –

0

В чем проблема?

Он будет генерировать всего 4 спрайта. визуально вы сможете увидеть два спрайта, потому что 3 спрайта находятся точно в одном положении.

+0

right i want all четыре должны быть видны –

+0

убедитесь, что их позиции меняются ........... Все спрайты, которые вы создаете в цикле, точно в одном и том же положении –

0

Вы не меняете положение камней, которые вы добавляете в петлю, в результате чего 3 камня находятся в одном месте.

+0

для первой итерации, я могу установить положение относительно «скалы », который создает« rock2 (1) », теперь, как я могу установить положение относительно этого созданного камня ???? –

Смежные вопросы