如何在cocos 2d中添加sprite到另一个sprite?

时间:2012-09-14 09:54:15

标签: iphone cocos2d-iphone xcode4.3

我想在另一个精灵上有一个精灵,并希望在顶部为精灵提供动画。任何人都可以建议我一个方法吗?我试过这个

    CCLayer *foreground = [CCLayer node];
    CCSprite* background = [CCSprite spriteWithFile:@"background.png" ];
    background.position = ccp( 150, -120 );

    seeker1 = [CCSprite spriteWithFile: @"wave.png"];
    seeker1.position = ccp( 180, 420 );
    [seeker1 addChild:background z:-1];

    [foreground addChild:seeker1];

    [self addChild:foreground z:1];


    id waves = [CCWaves actionWithWaves:5 amplitude:15 horizontal:YES vertical:YES grid:ccg(15,10) duration:5];
    id a1 = [CCMoveBy actionWithDuration:3 position:ccp(0,-200)];

    id action2 =
    [CCSequence actions: [[a1 copy] autorelease], [a1 reverse], nil];

    id action = [CCSpawn actions:
                 action2,
                 waves,
                 nil];
    [seeker1 runAction:action];

但是,当我运行程序时,它会为整个图层提供动画。任何人都可以只为seeker1提供动画吗?

1 个答案:

答案 0 :(得分:1)

那是因为你添加了背景精灵作为seeker1精灵的孩子。

我假设您打算将背景添加为前景图层的子项。像这样:

[foreground addChild:background z:-1];