动画:Animation这个类里面有create函数,下面这行代码中Animation首先先创建一个空的动画,因为是动画,所以需要两张或者以上的图片进行切换达到形成动画的效果,因为我这里把图片的名字写的相近,所以利用了一下规律进行存储,提高代码的可读性
Animation* pAnimationS = Animation::create();
char szName[32] = {};
for (int i = 0; i < 2; ++i)
{
sprintf_s(szName, "Plane0_%d.png", i);
pAnimationS->addSpriteFrame(SpriteFrameCache::getInstance()->getSpriteFrameByName(szName));
}
pAnimationS->setDelayPerUnit(0.2);
pAnimateS = Animate::create(pAnimationS);
pAnimateS->retain();
创建动画分为以下几个步骤:1.先创建一个空的动画类的对象:Animation* pAnimation = Amation::create();还有以精灵帧的方式进行创建动画creattithSpreFrame();。2.创建完成之后就是为该对象添加图片3.设置切换图片的时间,用pAnimation->setDelayPerUnit(这里就是时间间隔)4.创建动画动作,把pAnimation这个对象传进Animate这个类里的create函数里,那么这个动画就基本已经创建完毕,但是这样创建的动画只切换一次,需要用到RepeatForever这个类反复执行,然后把RepeatForever声明的对象传入RunAction中,RunAction由需要执行该动画操作的对象执行。