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

 素材图:

然后使用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试试就可以看到效果。

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值