cocos2d-html helloword 学习笔记
//学习内容: /**cc.ScaleTo.create(duration, sx, sy) duration持续旋转时间 sx 横坐标大小比例 sy 纵坐标大小比例 */ var scaleToA = cc.ScaleTo.create(2, 1, 1); /** cc.sprite.runAction运行事件 cc.Sequence.create创建按顺序执行的动作 */ this.sprite.runAction(cc.Sequence.create(rotateToA, scaleToA)); /** * cc.MoveBy.create(duration, deltaPosition) * cc.TintTo.create(duration, red, green, blue) */ this.helloLabel.runAction(cc.Spawn.create(cc.MoveBy.create(2.5, cc.p(0, size.height - 40)),cc.TintTo.create(2.5,255,125,0)));
/**************************************************************************** Copyright (c) 2010-2012 cocos2d-x.org Copyright (c) 2008-2010 Ricardo Quesada Copyright (c) 2011 Zynga Inc. http://www.cocos2d-x.org Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************************************************************/ var Helloworld = cc.Layer.extend({ isMouseDown:false, helloImg:null, helloLabel:null, circle:null, sprite:null, init:function () { ////////////////////////////// // 1. super init first this._super(); ///////////////////////////// // 2. add a menu item with "X" image, which is clicked to quit the program // you may modify it. // ask director the window size var size = cc.Director.getInstance().getWinSize(); // add a "close" icon to exit the progress. it's an autorelease object var closeItem = cc.MenuItemImage.create( "res/CloseNormal.png", "res/CloseSelected.png", function () { history.go(-1); },this); closeItem.setAnchorPoint(0.5, 0.5); var menu = cc.Menu.create(closeItem); menu.setPosition(0,0); this.addChild(menu, 1); closeItem.setPosition(size.width - 20, 20); ///////////////////////////// // 3. add your codes below... // add a label shows "Hello World" // create and initialize a label this.helloLabel = cc.LabelTTF.create("Hello World", "Arial", 38); // position the label on the center of the screen this.helloLabel.setPosition(size.width / 2, 0); // add the label as a child to this layer this.addChild(this.helloLabel, 5); var lazyLayer = cc.Layer.create(); this.addChild(lazyLayer); // add "HelloWorld" splash screen" this.sprite = cc.Sprite.create("res/HelloWorld.png"); this.sprite.setPosition(size.width / 2, size.height / 2); //设置初始大小比例 this.sprite.setScale(0.5); //设置初始旋转角度 this.sprite.setRotation(180); lazyLayer.addChild(this.sprite, 0); //duration持续旋转时间cc.RotateTo.create(duration, deltaAngleX, deltaAngleY) //creates the action with separate rotation angles var rotateToA = cc.RotateTo.create(2, 0); /**cc.ScaleTo.create(duration, sx, sy) duration持续旋转时间 sx 横坐标大小比例 sy 纵坐标大小比例 */ var scaleToA = cc.ScaleTo.create(2, 1, 1); /** cc.sprite.runAction运行事件 cc.Sequence.create创建按顺序执行的动作 */ this.sprite.runAction(cc.Sequence.create(rotateToA, scaleToA)); /** * cc.MoveBy.create(duration, deltaPosition) * cc.TintTo.create(duration, red, green, blue) */ this.helloLabel.runAction(cc.Spawn.create(cc.MoveBy.create(2.5, cc.p(0, size.height - 40)),cc.TintTo.create(2.5,255,125,0))); this.setTouchEnabled(true); return true; }, // a selector callback menuCloseCallback:function (sender) { cc.Director.getInstance().end(); }, onTouchesBegan:function (touches, event) { this.isMouseDown = true; }, onTouchesMoved:function (touches, event) { if (this.isMouseDown) { if (touches) { //this.circle.setPosition(touches[0].getLocation().x, touches[0].getLocation().y); } } }, onTouchesEnded:function (touches, event) { this.isMouseDown = false; }, onTouchesCancelled:function (touches, event) { console.log("onTouchesCancelled"); } }); var HelloWorldScene = cc.Scene.extend({ onEnter:function () { this._super(); var layer = new Helloworld(); layer.init(); this.addChild(layer); } });
相关推荐
cocos2d-x初探学习笔记(1)--HelloWorld
首先我们要为vs2010安装一个cocos2d-x的插件,有了这个插件,当我们打开vs2010,单击文件->新建->项目的时候,在已安装的模板一栏就能看到cocos2d-x了,方便了我们的编写。那么这个插件在什么地方呢,由于cocos2d-x...
主要介绍了Cocos2d-x学习笔记之Hello World源码分析,接上一篇内容,本文着重分析源码文件,需要的朋友可以参考下
图层在cocos2d-x中很重要,我们可以在其中添加精灵,也可以将图层添加到场景中。这几个图层类功能各不相同,具体的看代码的注释。大家只需要替换掉helloworld中的init函数就可以运行了。 bool HelloWorld::init() ...
主要介绍了Cocos2d-x学习笔记之CCLayerColor层的使用实例,CCLayerColor是一个颜色布景层类,本文依然使用Hello World作为例子讲解,需要的朋友可以参考下
cocos2d-x的坐标系很重要,想要学好该引擎,深入理解它的坐标体系很重要。注释写的很清楚了,对照上运行结果一块来看代码吧! bool HelloWorld::init() { bool bRet = false; do { CC_BREAK_IF(! CCLayer::...
bool HelloWorld::init() { bool bRet = false; do { CC_BREAK_IF(! CCLayer::init()); CCSprite * sprite = CCSprite::create("image1.png"); this->addChild(sprite); //获得CCSprite的默认坐标,...
记录了使用VS2010学习cocos2d-x的示例程序HelloWorld的全部代码注释,以及配置Eclipse+ADT+CDT+Cygwin+VS2010+cocos2d-x的开发环境(WIN7)和相关问题,学习了一个简单的示例游戏,并详细注释了全部代码。...
Cocos2D研究院之构建游戏开发环境(一) Direct3D研究院之创建第一个DirectX3D项目(一) NGUI研究院之开始学习制作第一个例子(一) Objective-C研究院之基础语法(一) Ruby On Rails研究院之初识Rails(一) ...