【问题标题】:Translating from Cocos2d to Cocos2d-X从 Cocos2d 转换到 Cocos2d-X
【发布时间】:2014-01-24 18:36:30
【问题描述】:

我正在将一段代码从 cococs2D 翻译成 cocos2D-X。我遇到了以下几行,我无法理解如何翻译

 [spriteBg runAction:[CCSequence actions:sc,[CCCallFuncO actionWithTarget:basketTimer_ selector:NSSelectorFromString([selectors objectAtIndex:0]) object:sprite], nil]];

有人可以帮我把它翻译成 Cocos2d-X 中的 Cocos2d 吗?

亲切的问候,

【问题讨论】:

  • 如果你能告诉我你希望通过这个实现什么......那么我可以提供更好的帮助。

标签: c++ objective-c cocos2d-iphone cocos2d-x translate


【解决方案1】:

试试这个..

spriteBg->runAction::create(CCSequence::create(sc,CCCallFunc::create(this, callfunc_selector(myMethod)),NULL));

在您的代码中,myMethod 被“选择器”的索引 0 处的选择器替换,我猜这是选择器的数组或字典或类似的东西。 而“sc”是一个预定义的动作,它将在 spriteBg 上运行。

【讨论】:

    【解决方案2】:

    对于 cocos2d-x v 2.2.1:

    NSSelectorFromString([selectors objectAtIndex:0]

    CCCalFuncO *call = CCCallFuncO::create(basketTimer_, callfuncO_selector(BasketTimerClass::BasketTimerMethod), sprite)
    spriteBg->runAction(CCSequence::create(sc, call, NULL));
    

    cocos2d-x 和 cocos2d-iphone 中的每个类都具有相同的名称,因此您可以在文档中轻松找到它: CCSequenceCCCalFuncO

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多