【问题标题】:Cocos2d-x schedule errorCocos2d-x 调度错误
【发布时间】:2012-09-10 15:25:56
【问题描述】:

allyMonserCCSprite(继承)。当我使用计划时,allyMonsteraction() 中是NULL。但是,当我直接调用action() 时,allyMonster 不是NULL,这是正常的。

当我运行这段代码时,日志显示:

1, 0x23ds566
2, 0xfffffff

我想知道原因1, 0x23ds566 -> 2, 0xfffffff。为什么会变?

void AMS_Moving::runAction()
{
    allyMonster->unscheduleAllSelectors();
    allyMonster->stopAllActions();
    allyMonster->schedule( schedule_selector( AMS_Moving::action ) );

    CCLog("1. %x", allyMonster);
}

void AMS_Moving::action()
{
    CCLog("2. %x", allyMonster);
    ...
    ...
}

【问题讨论】:

    标签: cocos2d-x schedule


    【解决方案1】:

    我猜原因是,当你运行预定的函数时,它不是指向你想要的函数,而是别的东西,因为

    void AMS_Moving::action() 
    

    错了。默认情况下,所有 schedule 函数都应该输入一个 ccTime dt,它应该是

    void AMS_Moving::action(ccTime dt)
    

    【讨论】:

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