动态添加多个精灵

时间:2013-05-28 06:17:08

标签: ios cocos2d-iphone

想要使用for循环动态添加精灵作为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];
        }

提前感谢..

3 个答案:

答案 0 :(得分:0)

这是什么问题?

它将生成总共4个精灵。从视觉上你可以看到两个精灵因为3个精灵正好在同一个位置。

答案 1 :(得分:0)

你没有改变你在循环中添加的岩石的位置,导致在同一个地方有3块岩石。

答案 2 :(得分: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