作者想让飞机能发子弹
1 资源
var res = {
///....
BULLET1:'res/bullet1.png',//.....
};
2 有调度的airplane
var Airplane = cc.Layer.extend({
ctor:function (){
//......
me.batchNode=new cc.SpriteBatchNode(res.BULLET1);
me.batchNode.retain();
me.bullteId=0;
me.bullteSpeed=500;
me.bulltes={};
me.schedule(me.fire,0.5);
//......
return true;
},onExit:function(){
me.batchNode.release();
},fire:function(dt){
var me=this;
var sp=new cc.Sprite(me.batchNode.getTexture());
var point=me.air.getPosition();
var px=point.x;
var py=point.y + me.air.getContentSize().height + 20;
sp.setPosition(px,py);
var bid=me.bullteId++;
sp.setTag(bid);
me.addChild(sp,-1);
var flyLen= cc.winSize.height - py;
var duration = flyLen / me.bullteSpeed;
var action=new cc.Sequence([
new cc.MoveTo(duration,cc.p(px,cc.winSize.height)),new cc.CallFunc(function(bullet,id){
delete this.bulltes[id];
this.removeChildByTag(id);
},me,bid)
]);
sp.runAction(action);
me.bulltes[bid]=sp;
}
});
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
小编个人微信号 jb51ccc
喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!