本节课学习的内容是单点触摸的内容。通过本节课的学习,在以后的做游戏的过程中,可以更加的方便。核心代码如下:
cc.eventManager.addListener({
event:cc.EventListener.TOUCH_ONE_BY_ONE,
swallowTouches:true,
onTouchBegan:this.touchbegan.bind(this),
ouTouchMoved:this.touchmoved,
ouTouchEnded:this.touchended
},this);
touchbegan:function(touch,event){
cc.log("按下");
var newnpc=new cc.Sprite(res.npc01_png);
newnpc.setPosition(touch.getLocation().x,touch.getLocation().y);
this.addChild(newnpc);
return true;
}
onTouchBegan:this.touchbegan.bind(this)和onTouchBegan:this.touchbegan的区别在于这个事件的响应的位置。如果把代码改成this.touchbeagn的话,在function里进行addChild就会失败。我通过查阅资料得到的原因是因为this没有传递到touchbegan里,所以无法将子节点添加到当前场景中。
最后附上本节课的作业链接:
http://www.cocoscvp.com/usercode/2016_04_19/65f90816e9c652526676bba04c3d3b5f58933536/
原文链接:https://www.f2er.com/cocos2dx/339520.html