我也来分享我的cocos2d-x的动画生成方法

首先,我得先声明一下,我是一名超级菜鸟,刚刚参加学校实验室跟着老师做项目。所以写的东西也是乱七八糟的。请原谅我讨论组里面的生成动画方法已经失效,额 因为版本升级不兼容以前的某些函数,所以我斗胆发表这篇 好了 废话不多了 上菜。
//应该满足条件 1.fname=动画的png, length=png图片的长度。。。。flag=根据png图片得到从第几行开始截取,从而取得方
向动画。

CCAction *GAMESceneLayer::my_donghua(const char *fname, int length, int highth, int flag)
{
	CCTexture2D *mode = CCTextureCache::sharedTextureCache()->addImage(fname);
	CCArray *m_frames  = new CCArray();//CCMutableArray已经木有了。。。
	for (int i = 0; i < 4; i++)
	{
		for (int j = 0; j < 4; j++)
		{
			CCSpriteFrame *frame = CCSpriteFrame::frameWithTexture(mode,CCRectMake(j * length / 4, i * highth / 4, length / 4, highth / 4));
			m_frames->addObject(frame);
		}	
	}
	
	int a = 0, b = 0;
	if (flag == 0)
	{
		a = 0;b = 4;
	}else if (flag == 1)
	{
		a = 4;b = 8;
	}else if (flag == 2)
	{
		a = 8;b = 12;
	}else if (flag == 3)
	{
		a = 12;b = 16;
	}
	CCLog("a = %d, b = %d", a, b);
	
	CCArray *temp = new CCArray();
	for (int i = a; i < b; i++)
	{
		temp->addObject(m_frames->objectAtIndex(i));
	}

	//enemy = CCSprite::spriteWithSpriteFrame((CCSpriteFrame*)temp->objectAtIndex(flag));
	
	CCAnimation *m_ani = CCAnimation::animationWithSpriteFrames(temp, 0.2f);
	CCAnimate *m_action = CCAnimate::actionWithAnimation(m_ani);
	CCAction *tempAction = CCRepeatForever::actionWithAction(m_action);
	return tempAction;
}

命名规则也很丑。。。额 我是小小鸟。我愿意把我写得很挫的代码分享。希望大牛们帮我优化一下吧 呵呵
借用老G的图片
324
325

额 没有注释。。。。。。:lol