如何在cocos2d-x for android屏幕上触摸精灵直到触摸?

时间:2013-12-09 07:10:51

标签: android cocos2d-x

我使用过CCSequence,但我无法使用CCRepeatForEver。

CCFiniteTimeAction * s = CCSequence :: actions(          CCScaleBy :: actionWithDuration(1,1.0),enter code here          CCScaleBy :: actionWithDuration(1,-1.0),          CCScaleBy :: actionWithDuration(1,1.0),                  CCScaleBy :: actionWithDuration(1,-1.0),                  CCScaleBy :: actionWithDuration(1,1.0),                          CCScaleBy :: actionWithDuration(1,-1.0),NULL);          circle-> runAction(一个或多个);

我想在cocos2d-x中使用CCRepeatForEver for android。 请帮帮我。

提前致谢。

1 个答案:

答案 0 :(得分:1)

嗯,你为什么不用它?你的代码中没有任何地方。另外,“我无法使用CCRepeatForever”的意思是什么?你得到编译错误还是运行时?

查看代码,问题是您将CCSequence分配给CCFiniteTimeAction类型,而CCRepeatForever需要CCActionInterval类型。这就是继承的方式:

CCSequence -> CCActionInterval -> CCFiniteTimeAction -> …

因此,完成您所做的事情是完全有效的,但不适用于CCRepeatForever,因为它不知道如何处理您提供的类型。因此,要使其工作,您需要在代码中的两个位置进行更改:

CCActionInterval *s = CCSequence::create(…);
//or
CCSequence *s = CCSequence::create(…);
//and at the end
circle->runAction(CCRepeatForever::create(s));  

另外,如果您注意到,我已将CCSequence::actions更改为CCSequence::create,因为这是应该的方式。