本文目录一览:
如何使用Code IDE调试Cocos2d-JS开发的游戏
运行、测试游戏
1. 新建一个名为 CocosJSGame 的 Cocos JavaScript 工程
2. 点击工具栏上的 debug 按钮
3. 默认情况下脚本会运行在我们提供的 mac 版本预编译 runtime 上。为了简单起见,我们不对默认值进行任何改动。如果你想要在其他我们支持的目标平台上调试程序,可参考下文的“在其它目标平台上调试”
如何调试
断点支持
可以在 javascript 脚本文件中增加断点
当断点被触发时选择 “Yes” 打开 Debug Perspective 透视图,可以看到很多与调试相关的视图,调用栈、变量和断点等等。
支持 Step over, Step into, Step out 等调试方式。
代码热更新
想更改右下角的 close 按钮的位置?closeItem.attr 方法是控制该按钮的显示位置的。
closeItem.attr({
x: size.width - 20,
y: 20,
anchorX: 0.5,
anchorY: 0.5
});
修改“x”上面的值,把"size.width-20" 改成 ""size.width/2" 然后保持修改, 你会发现,在没有重启的情况下 close 按钮的位置已经改变了,在屏幕底部的中间!
在其他目标平台上调试
通过工具栏上的打开 Debug Configurations 打开 Debug Configurations 页面
在页面的左侧,选择之前我们为你创建的名为CocosJSGame的configuration
在 iOS Simulator 上调试
选择iOS Simulator单选项
选择正确的runtime app
点击 Debug 按钮,预编译的 runtime 会被自动安装到模拟器中
在iOS设备上调试
首先,你需要一个 runtime IPA, 从 1.0.0-rc1 版本开始,你可以通过 Code IDE 自己编译一个,然后安装IPA到设备中
在 iOS 设备上启动 runtime
在 "Debug Configuration" 界面选择 Remote Debug 单选项
platform 选择 "iOS"
将设备的 ip 地址填写在 Device IP 上
最后点击Debug按钮
在 Android 设备上使用 ADB 模式调试
在 "Debug Configuration" 界面选择 Android ADB Mode 单选项
选择正确的 runtime apk
点击Debug按钮
IDE 会自动安装配置中的 runtime apk 到你的连接设备上并启动runtime开始调试
在 Android 设备上使用网络模式调试
手动安装 runtime 到你的设备上,它被存放在 CocosLuaGame/runtime/android 目录中
手动启动 runtime,停留在 waiting 页面
在 "Debug Configuration" 界面选择 Remote Debug 单选项
platform 选择 "Android"
将设备的 ip 地址填写在 Device IP 上
点击Debug按钮
如何调试C++
从 1.0.0-rc1 版本开始,支持使用 XCode/Visual Studio 调试 C++ 代码的同时使用 Cocos Code IDE 调试 C++ 代码。
以调试 Mac 为例:
如果你还没有 C++ 代码,那么需要先添加(右击工程,Cocos Tools-Add Native Codes Support...)
使用 Xcode 打开 frameworks/runtime-src/proj.ios_mac 工程,并启动调试
回到 Cocos Code IDE,打开 "Debug Configuration" 页面,选择 Remote Debug 单选项
platfrom 选择 “Mac”
Target IP 填写 "127.0.0.1"
点击Debug按钮..
cocos-js addanimation和setanimation的区别
setAnimation是告诉该控件我待会要执行什么动画,而startAnimation告诉该控件,我要立马执行该动画
顾名思义。。set 设置 start开始
cocos js 怎样做出按钮选中效果
cocos js 做出按钮选中效果示例:
一,首先使用cocos新建一个Cocos2d-js的新项目,然后再cocostudio中创建一个场景,在场景中添加三个按钮分别设置三态的图片
二,打开编辑器,实现代码如下:
var HelloWorldLayer = cc.Layer.extend({
ctor:function () {
this._super();
//导入cocostudio中拼好的界面
mainscene = ccs.load(res.MainScene_json).node;
this.addChild(mainscene);
this.teamButton = ccui.helper.seekWidgetByName(mainscene,"Button_0");
var btn2 = ccui.helper.seekWidgetByName(mainscene,"Button_1");
var btn3 = ccui.helper.seekWidgetByName(mainscene,"Button_2");
//先默认设置一个按钮为选中状态 this.teamButton.setBrightStyle(ccui.Widget.BRIGHT_STYLE_HIGH_LIGHT);
this.teamButton.setEnabled(false);
var teamInfo = this.teamButton;
this.teamButton.addTouchEventListener(this.selectedBtn1,this);
btn2.addTouchEventListener(this.selectedBtn2,this);
btn3.addTouchEventListener(this.selectedBtn3,this);
return true;
},
selectedBtn1: function (sender, type) {
if(type == ccui.Widget.TOUCH_ENDED){
this.callBack(sender);
cc.log("==========商店界面");
}
},
selectedBtn2: function (sender, type) {
if(type == ccui.Widget.TOUCH_ENDED){
this.callBack(sender);
cc.log("==========卡牌界面");
}
},
selectedBtn3: function (sender, type) {
if(type == ccui.Widget.TOUCH_ENDED){
this.callBack(sender);
cc.log("==========战斗界面");
}
},
callBack: function (sender) {
if (this.teamButton == sender){
return;
}else{
this.teamButton.setBrightStyle(ccui.Widget.BRIGHT_STYLE_NORMAL);
this.teamButton.setEnabled(true);
sender.setBrightStyle(ccui.Widget.BRIGHT_STYLE_HIGH_LIGHT);
sender.setEnabled(false);
this.teamButton = sender;
}
},
});
var HelloWorldScene = cc.Scene.extend({
onEnter:function () {
this._super();
var layer = new HelloWorldLayer();
this.addChild(layer);
}
});
三,运行就可以查看界面,点击不同的按钮显示不同的输出结果
[Log] ==========商店界面 (CCDebugger.js, line 331)
[Log] ==========卡牌界面 (CCDebugger.js, line 331)
[Log] ==========战斗界面 (CCDebugger.js, line 331)