0

想要使用 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];
        }

提前致谢..

4

3 回答 3

0

什么问题?

它将生成总共 4 个精灵。从视觉上您将能够看到两个精灵,因为其中 3 个精灵完全相同。

于 2013-05-28T06:20:47.217 回答
0

您不会更改在循环中添加的岩石的位置,从而导致 3 个岩石在同一个位置。

于 2013-05-28T06:21:07.657 回答
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

于 2013-05-28T06:27:06.637 回答