Cocos2d-x计划错误
Cocos2d-x计划错误,cocos2d-x,schedule,Cocos2d X,Schedule,allyMonser是一个CCSprite(继承)。当我使用schedule时,allyMonster在action()中为NULL。但是,当我直接调用action()时,allyMonster不是NULL,这是正常的 运行此代码时,日志显示: 1, 0x23ds566 2, 0xfffffff 我想知道原因是什么。为什么会改变 void AMS_Moving::runAction() { allyMonster->unscheduleAllSelectors(); al
allyMonser
是一个CCSprite
(继承)。当我使用schedule时,allyMonster
在action()
中为NULL
。但是,当我直接调用action()
时,allyMonster
不是NULL
,这是正常的
运行此代码时,日志显示:
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);
...
...
}
我想原因是,当您运行调度函数时,它不是指向您想要的函数,而是指向其他函数,因为
void AMS_Moving::action()
这是错误的。默认情况下,所有计划函数都应采用输入ccTime dt,该值应为
void AMS_Moving::action(ccTime dt)