function init(){
stage = new createjs.Stage(document.getElementById('game'))
createjs.Ticker.addEventListener("tick", handleTick)
createjs.Ticker.setFPS(60)
circle = new createjs.Shape()
circle.graphics.f("red").dc(0,0,50)
circle.x = 0
circle.y = 100
stage.addChild(circle)
circle.addEventListener("click", function(event){
createjs.Ticker.setPaused(!createjs.Ticker.getPaused())
})
}
function handleTick(event){
if(!event.paused){
circle.x +=5
if(circle.x >1000){
circle.x = 0
}
}
stage.update()
}
我想对于每个Cocos2d游戏开发者来说,js-tests一直都是学习和参考的宝贵资源,也是最权威的指导教程。而,我们知道,CocosCodeIDE是官方推荐的一款强有力的IDE,其功能之强大,之便捷是其他IDE所无法比拟的。那么如何将二者组合在一起,为我们的学习提供帮助呢?本篇博客将带你走进他们的世界。一、了解CocosCodeIDE和js-tests
CocosCodeIDE:官网推出的一款强大的IDE,基于Eclipse改制而成。其主要特色在于两个方面:
便捷实用: CocosCodeIDE安装简单,配置和创建项目非常容易,运行,调试,发布项目也非常容易上手。
功能强大: 我认为CocosCodeIDE最吸引我的地方就是其强大的功能,主要体现在对源码进行修改后,只需要保存,即可在运行的游戏中看到修改之后的效果,而不需要重新运行游戏。这为经常发生的“微调”操作带来了极大的便利。
PS:CocosCodeIDE官方下载地址:http://cn.cocos2d-x.org/download/#anchor5
CocosCodeIDE官方教程:http://cn.cocos2d-x.org/article/index?type=code-ide&url=/doc/cocos-docs-master/manual/code-ide/zh.md
js-tests:当你下载好游戏引擎包时,一般都会自带两个案例教程,一个就是大家经常看到的“打飞机”游戏,另一个就是js-tests。至于它们在哪里呢?请到你的安装目录下的samples文件夹下寻找,如下图:
js-tests里面主要展示的是cocos2d API的具体使用方法的案例教程,几乎每个API都可以找到使用示例,效果非常赞。
二、为什么要组合?
在组合之前,我们解释一下为什么要将二者组合。网上的不少教程都推荐大家通过第三方软件的帮助,如:appserv,wamp,xampp等,来实现在浏览器中直接运行js-tests和moonwarriors(打飞机),并通过浏览器中观看效果,IDE中查看代码的方式进行学习,可是这样不仅反复切换非常麻烦,也不能通过自己的微调来查看效果的改变,当然了,如果要看到改变必须重新运行加载一遍。非常浪费时间,异常繁琐。
相比之下,我们会发现,在CocosCodeIDE中,我们可以通过win32调试功能,这个非常强大的功能,对我们的js-tests进行实时微调,这对于学习来说,无疑是巨大的帮助。当然了,你也可以通过CocosCodeIDE中的通过浏览器运行的功能,在浏览器中查看js-tests的运行情况。下面,我们就来一起将CocosCodeIDE和js-tests组合起来吧。
PS:友情提醒,通过win32调试和在浏览器中运行得到可测试的功能是稍有差异的,有的功能只能在win32调试状态下查看,有的则只能在在浏览器中运行状态下查看。
win32运行状态下无法查看的功能有:
Bake Layer Test
Box2D Test
Facebook SDK Test
Reflection Test
TextInput Test
Touches Test
在浏览器中运行无法查看的功能有:
Effects Test
Effects Advanced Test
MotionStreak Test
OpenGL Test
Reflection Test
Cocos2d JS Presentation
下图为CocosCodeIDE部分截图,其中最左边两个按钮分别为win32调试,win32运行,最右边的按钮为在浏览器中运行。
1、obj1你可以将其理解为一个物体,在网页中的表现他可能就是一个dom节点。2、getStyle函数所做的事情是取节点样式的值,其中ele表示的是需要取样式值得dom节点,attr表示的是需要取哪个样式?currentStyle和getComputedStyle是浏览器支持的,之所以这样写是为了兼容各个浏览器。
3、etStyle(obj1,'left')就是去obj1这个元素距离左边的偏移量,是距离网页最左边还是父元素要看当前元素是什么定位。
4、最后的if判断就是判断两个元素有没有碰撞到。