bool HelloWorld::init()
{
//////////////////////////////
// 1. super init first
if ( !CCLayerColor::initWithColor(ccc4(255,255,255,255)))
{
return false;
}
CCMenuItemImage *pCloseItem = CCMenuItemImage::create(
"button2.png",
"button2.png",
this,
menu_selector(HelloWorld::menuHandle));
pCloseItem->setPosition(50.0,50.0);
CCMenu* pMenu = CCMenu::create(pCloseItem, NULL);
this->addChild(pMenu, 1);
this->schedule(schedule_selector(HelloWorld::time),2);
return true;
}void HelloWorld::time(float val)
{
spriteAct();
}
void HelloWorld::spriteAct()
{
CCSize screenSize = CCDirector::sharedDirector()->getVisibleSize();
CCSprite *pSprite = CCSprite::create("Player.png");
int y = rand()%(int)screenSize.height;
pSprite->setPosition(ccp(screenSize.width-20,y));
this->addChild(pSprite);
CCMoveTo *move = CCMoveTo::create(3.0,ccp(0,y));
CCCallFuncN *pSelfdefinedAc = CCCallFuncN::create(this,callfuncN_selector(HelloWorld::selfdefinedAc));
CCSequence *actions = CCSequence::create(move,pSelfdefinedAc,NULL);
pSprite->runAction(actions);
}
void HelloWorld::selfdefinedAc(CCNode* pSender)
{
// m_pSprite->setPosition(ccp(0.0,0.0));
// m_pSprite->setScale(2.0);
pSender->removeFromParentAndCleanup(true);
}
本文探讨了在游戏开发中如何实现角色的动作动画,通过使用CCSprite和动作序列,展示了如何创建动态的角色行为,包括位置变化和自我定义的动画响应。
500

被折叠的 条评论
为什么被折叠?



