关于pvr和plist的联合使用

19 篇文章 0 订阅

由于最近一段时间,那个《保卫萝卜》挺火的,所以就看看了他的资源,以猜想他的实现方式,感觉这个应用还是有不错的研究意义的。

CCSize s = CCDirector::sharedDirector()->getWinSize();

	CCSpriteFrameCache* cache = CCSpriteFrameCache::sharedSpriteFrameCache();
	//cache->addSpriteFramesWithFile("Resource/Player/player_4_run.plist","Resource/Player/player_4_run.png");
	cache->addSpriteFramesWithFile("Resource/Themes/Theme1/BG1/BG-hd.plist","Resource/Themes/Theme1/BG1/BG-hd.pvr.ccz");	
	cache->addSpriteFramesWithFile("Resource/Themes/Theme1/Items/Monsters01-hd.plist","Resource/Themes/Theme1/Items/Monsters01-hd.pvr.ccz");

上面是载入想要的pvr.ccz 资源,一张背景和一个怪物的资源,下面我就来使用以下上面载入的资源


CCSprite* bg = CCSprite::createWithSpriteFrameName("skymap01.png");
	bg->setPosition(ccp(s.width/2,s.height/2));
	addChild(bg);

这就是我们游戏的背景,很简单,没啥好说的


	CCArray* animFrames = CCArray::createWithCapacity(2);
	int index_array[] = {1,2};
	char str[100] = {0};
	for(int i = 0; i < _countof(index_array); i++) 
    {
        sprintf(str, "fly_yellow%02d.png", index_array[i]);
        CCSpriteFrame* frame = cache->spriteFrameByName( str );
        animFrames->addObject(frame);
    }

由于我的怪物是一个可爱的动物,所以是一个动画帧,cocos2d-x样例中有的实例,载入动画帧,来为下面的动画做准备。


	CCSprite* pPlayer = CCSprite::createWithSpriteFrameName("fly_yellow01.png");
	pPlayer->setPosition(ccp(s.width/2,s.height/2));
	addChild(pPlayer,0,tag_PLAYER_GIRL);

在设置动画前,需要一个静止的CCSprite实例,上面干的事情就是这个


	m_run = CCAnimation::createWithSpriteFrames(animFrames, 1.0f/4);
	m_run->retain();
	CCFiniteTimeAction* pRun = CCRepeatForever::create(CCAnimate::create(m_run));

开始创建动画了,由于这个动画是以后会频繁用的,所以我给保存起来了。以备后用。

pPlayer->runAction(pRun);

跑起来,效果如下:

后续接着研究一下这个游戏。蛮有意思的游戏。。。。


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值