0

我有一个名为 SuccessLayer 的 CCLayer 类。当关卡完成时,它会被添加到场景中,如下所示:

SuccessLayer *successLayer = [SuccessLayer node];
[self addChild:successLayer];

在 SuccessLayer 中,我想飞过去,我试图通过以下方式实现:

-(void)onEnter{
    Asteroid *asteroid = [Asteroid spriteWithFile:@"rocks.png"];
    asteroid.position = ccp(0, 500);
    [self addChild:asteroid];
    CCMoveTo *move = [CCMoveTo actionWithDuration:2.0 position:ccp(1000, 0)];
    [asteroid runAction:move];}

但是,它似乎CCMoveTo不起作用。我看到精灵坐在它的初始坐标上,但仅此而已。我在这里想念什么?谢谢

4

2 回答 2

3

[超级 onEnter];

任何 coco 的 onSomething,你都应该超级 onSomething。

于 2013-02-14T23:13:26.387 回答
0

通过将其转换为 CCSprite 来解决问题(这是正确的说法吗?)

CCSprite *asteroid = [Asteroid spriteWithFile:@"rocks.png"];

Asteroid已经是 CCSprite 的子类,所以我不知道为什么会这样,但它允许我现在对其运行操作。

于 2013-02-15T05:48:02.397 回答