void LayerEnemy::addSmallEnemy(float dt) { Enemy *smallPlane = Enemy::create(); smallPlane->bindEnemySprite(CCSprite::createWithSpriteFrameName("enemy1.png"), SMALL_MAXLIFE); m_psmallArray->addObject(smallPlane); addChild(smallPlane); //! 随机产生0.0~1.0的数 float x = CCRANDOM_0_1()*(winSize.width - smallPlane->getBoundingBox().size.width) + smallPlane->getBoundingBox().size.width /2; float y = winSize.height + smallPlane->boundingBox().size.height / 2; CCPoint smallBirth = ccp(x, y); smallPlane->setPosition(smallBirth); CCMoveTo *to = CCMoveTo::create(3, ccp( smallBirth.x, smallBirth.y - winSize.height - smallPlane->getBoundingBox().size.height /2 )); CCCallFuncN *actionDone = CCCallFuncN::create(this, callfuncN_selector(LayerEnemy::smallEnemyMoveFinishedFCallBack)); CCSequence *sequence = CCSequence::create(to, actionDone, NULL); smallPlane->runAction(sequence); //CCLog("%p", smallPlane); //CCLog("before count = %d", m_psmallArray->count()); }