cocos2d-js游戏设计常用函数笔记

1、给一个Layer添加触摸事件,前提需要在cocos studio当中吧panel的交互去掉,不然会不能自定义其触摸事件,


cc.eventManager.addListener({
prevTouchId: -1,
event: cc.EventListener.TOUCH_ALL_AT_ONCE,
onTouchesEnded:function (touches, event) {
var touch = touches[0];
cc.log("onTouchesEnded");
}
}, this);



2、获取cocostudio设计UI界面json数据,以及界面中控件的交互:


var root = ccs.uiReader.widgetFromJsonFile(res.game01Controller_json);
this.addChild(root,1);
this.btn_darts=ccui.helper.seekWidgetByName(root, "btn_darts");
this.btn_darts .addTouchEventListener(this.dartsTouchEvent,this);


3、使用create方法创建的Sprite需要更换图片方法:


this.setTextureRect(cc.rect(196,2,52,42));


4、使用plist文件方法:


    cc.SpriteFrameCache.getInstance().addSpriteFrames(resb01plist);
    cc.SpriteFrameCache.getInstance().addSpriteFrames(res.b02plist);

   使用时:
  var sprite=cc.Sprite.createWithSpriteFrameName("01.png");

  sprite.initWithSpriteFrameName("01.png");



5、使用ScrollView,需要给控件添加以下参数才能正常使用


 
this.scoll_level.setDirection(cc.SCROLLVIEW_DIRECTION_BOTH);
this.scoll_level.setTouchEnabled(true);
this.scoll_level.setBounceEnabled(true);


6、监听浏览器大小变化横竖屏:

当用户拖拽来改变浏览器大小,或者更有用的情况,当他们转动自己手机方向的时候。游戏中任意时刻都可以开启这种行为,只需要调用cc.EGLView的resizeWithBrowserSize函数:

cc.EGLView.getInstance().resizeWithBrowserSize(true);

为了更灵活得应对变化,我们为cc.EGLView提供了一个新的函数,你可以通过setResizeCallback函数注册一个回调函数来监听浏览器窗口大小变化事件:
cc.EGLView.getInstance().resizeWithBrowserSize(true);
// 做任何你所需要的游戏内容层面的适配操作
// 比如说,你可以针对用户的移动设备方向来决定所要应用的适配模式
// 比如说 获取宽度和高度,如果宽度大于高度就是横屏, 如果宽度小于高度就是竖屏});




7、使用cc.sys.localStrong存入到数据库当中对html5和app的区别:

 
html5当中若使用var values=cc.sys.localStrong.getItem("key"),当key不存在的时候values=undefined,而在app当中的时候其values=0.
切记判断有值为0的时候记得考虑清楚。


8、cocos2d-js读取json文件和txt文件的方法:
往往在更多的时候是需要设置游戏关卡地图,而这写数据需要能更好的与文案协同工作最好是保存到txt或者json文件,文案可以把excel文档通过一定的设置导入到txt文件或json文件。以下是使用cocos2d-js读取txt和json文件的方法

 
1、html5
cc.loader._loadTxtSync("res/map.txt");
2、native
jsb.fileUtils.getStringFromFile("map.txt");

你可能感兴趣的:(游戏,html5)