您的位置:首页 > 其它

使用plist创建精灵并执行动画

2013-03-24 11:53 405 查看
素材图:



然后使用Texture Packer放到一张图片上,并生成plist文件



接下来直接上代码

CCSize size = CCDirector::sharedDirector()->getWinSize();  //获得屏幕的尺寸

CCArray* pArray = CCArray::createWithCapacity(4);
CCSpriteFrameCache* pCache = CCSpriteFrameCache::sharedSpriteFrameCache();  //获得SpriteFrame的缓存
pCache->addSpriteFramesWithFile("attack.plist");
CCSprite* pSprite = CCSprite::createWithSpriteFrameName("A1_0.png");  //用attack.png中的第一张图片创建一个精灵
pSprite->setPosition(ccp(size.width/2,size.height/2));  //设置精灵的坐标

char name[20];
for(int i=0; i<4; i++)  //将plist中的图片都加载,放到array中
{
sprintf(name, "A1_%d.png", i);
CCSpriteFrame* pframe = pCache->spriteFrameByName(name);
pArray->addObject(pframe);
}

CCAnimation* pAnimation = CCAnimation::createWithSpriteFrames(pArray,0.2f);  //用array中的spriteframe创建一个animation,每帧间隔0.2s
CCAnimate* panimate = CCAnimate::create(pAnimation);

pSprite->runAction(CCRepeatForever::create(panimate));


运行结果就是



在mac下面qq截图不能截动态的,就给个样子,大家自己写个demo试试就可以看到效果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: