【cocos2d-x入门实战】微信飞机大战之八:自定义敌机精灵
转载请表明地址:http://blog.csdn.net/jackystudio/article/details/11890969
飞机可以控制飞行,并且发射子弹,那没有敌机怎么行?
敌机共有3种类型,分别为Enemy1,Enemy2和Enemy3,按大小排列,从程序角度看来,它们的本质都是一样的。不同点在于:
A.图像不一样
B.生命值不一样
C.移动速度和出现频率不一样
D.第三种敌机也就是最大的敌机,在飞行的过程中带有动画效果。
这里以最小的敌机(Enemy1)为例。
自定义的敌机类是少不了的,但是要从CCNode继承还是CCSprite继承,那就要看实际需要了,从CCNode继承灵活度会高一点,但是也麻烦一点,从CCSprite继承就会相对简单一点,但是灵活度就低了。建议还是从CCNode继承,这里因为只为飞机添加一个生命值属性,所以就直接从CCSprite继承了。
enemy3SpriteFrame_1=CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("enemy3_n1.png");enemy3SpriteFrame_2=CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("enemy3_n2.png");CCAnimation* animation=CCAnimation::create();//创建帧动画animation->setDelayPerUnit(0.1f);animation->addSpriteFrame(enemy3SpriteFrame_1);animation->addSpriteFrame(enemy3SpriteFrame_2);CCAnimate* animate=CCAnimate::create(animation);enemy3->runAction(CCRepeatForever::create(animate));//采用CCRepeaterForever不断重复动画
这不废话!最最重要的碰撞检测还没加入呢!