在游戏编程中,创建玩家控制的英雄是最基本的开发。
首先,导入英雄对应的图片资源(基于精灵表单):
[[CCSpriteFrameCachesharedSpriteFrameCache]addSpriteFramesWithFile:@"gameSprites.plist"];
该语句首先导入plist文件到内存中,然后自动寻找并导入与plist文件同名的图片资源文件。
导入图片资源后,依据图片资源创建动画
NSMutableArray *playerActionArray = [NSMutableArrayarray];
for (int i=0; i<N; i++) {
从内存中取出名称为player_%d的图片资源
NSString* key = [NSStringstringWithFormat:@"player_%d.png", i];
CCSpriteFrame* frame = [[CCSpriteFrameCachesharedSpriteFrameCache] spriteFrameByName:key];
添加到英雄动画的图片数组中
[playerActionArray addObject:frame];
}
将数组转化为动画序列,换帧间隔0.1秒
CCAnimation* animationPlayer = [CCAnimationanimationWithSpriteFrames:playerActionArray delay:0.1f];
生成动画对应的对象
id actPlayer = [CCAnimateactionWithAnimation:animationPlayer];
[playerActionArray removeAllObjects];
设置英雄精灵的初始图片
CCSprite *player=[CCSpritespriteWithSpriteFrameName:@"hero_0.png"];
设置英雄显示的位置
player.position=ccp(160,30);
[self addChild:playerz:0];
循环播放动画
[playerrunAction:[CCRepeatForeveractionWithAction:actPlayer]];