??中CLICK一???,?生特效。
?在的??的,DEBUG下面提是?
CCNODE.cpp
CCAssert( child->m_pParent == NULL, "child already added. It can't
be added again");
RELEASE下正常。
代?如下:
void NinjiaScene::updatePowerup(cocos2d::ccTime dt)
{
//m_powerup->SetActive(true);
CCSprite *pB = CCSprite::spriteWithSpriteFrameName("splash.jpg");
CCActionInterval* Shaky3D = Shaky3DDemo::actionWithDuration(5);
CCNode *pNode = CCNode::node();
if (m_powerup->isTouched())
{
CCMutableArray<CCSprite*>::CCMutableArrayIterator it;
CCMutableArray<CCSprite*> *pMonsterToDelete = new CCMutableArray<CCSprite*>;
// Add effect
addChild(pNode,0,1);
pNode->runAction(Shaky3D);
pNode->addChild(m_SptBkg,0);
其中, updatePowerup???powerup的按?,m_SptBkg?NinjiaScene???的成?,?型?CCSprite*.??是在NinjiaScene::init()中,我已??了addChild(m_SptBkg)了。大家?忙看看
bool NinjiaScene::init()
{
bool bRet = false;
do
{
...
...
// 3. Add add a splash screen, show the cocos2d splash image.
CCSize size = CCDirector::sharedDirector()->getWinSize();
CCSize winSize = CCDirector::sharedDirector()->getWinSize();
m_SptBkg = CCSprite::spriteWithSpriteFrameName("splash.jpg");
m_Vegeta = CCSprite::spriteWithSpriteFrameName("vegeta.png"); //,CCRectMake(0,0,256,224));
CC_BREAK_IF(! m_SptBkg);
CC_BREAK_IF(! m_Vegeta);
m_SptBkg->setPosition(ccp(size.width/2, size.height/2));
m_Vegeta->setPosition(ccp(m_Vegeta->getContentSize().width/2, winSize.height/2));
this->addChild(m_Vegeta,1,1);
this->addChild(m_SptBkg,0,0);
demoEffect.setBackgroup(m_SptBkg);
//Add behavior
initialScore();
initpowerup();
...
bRet = true;
} while (0);
return bRet;
}