Cocos2d-html5测试用版本:2.2.1。
RotateTo:将 cc.Node 对象旋转到一个特定的角度。
RotateBy:将 cc.Node 对象旋转一个特定的角度。
使用cc.RoateTo.create(duration,deltaAngleX,deltaAngleY)和cc.RotateBy.create(duration,deltaAngleY)来创建动作。
- duration
- 运动周期,单位为s。
- deltaAngleX
- 水平旋转角度
- deltaAngleY
- 垂直旋转角度,如果省略,则取deltaAngleX的值。
请看下列代码:
- var GameScene = cc.Scene.extend({
- enemy1: null, // 敌人1
- enemy2: null, // 敌人2
- enemy3:null, // 敌人3
- layer: null, // 布景
- winSize: null, // 游戏运行窗口尺寸
- onEnter: function () {
- this._super();
- this.initData();
- },
- initData: function () {
- // 获取尺寸
- this.winSize = cc.Director.getInstance().getWinSize();
- // 添加布景
- this.layer = cc.LayerColor.create(cc.c4(200,200,255),this.winSize.width,this.winSize.height);
- this.addChild(this.layer);
- // 创建动作
- var actionTo = cc.RotateTo.create(2,45,90);
- var actionBy = cc.RotateBy.create(2,180,360);
- var actionByBack = actionBy.reverse();
- // 添加敌人1
- this.enemy1 = cc.Sprite.create(s_enemy_1);
- this.enemy1.setPosition(cc.p(300,300));
- this.layer.addChild(this.enemy1);
- this.enemy1.runAction(actionTo);
- // 添加敌人2
- this.enemy2 = cc.Sprite.create(s_enemy_2);
- this.enemy2.setPosition(cc.p(100,100));
- this.layer.addChild(this.enemy2);
- this.enemy2.runAction(cc.Sequence.create(actionBy,actionByBack));
- // 添加敌人3
- this.enemy3 = cc.Sprite.create(s_enemy_3);
- this.enemy3.setPosition(cc.p(200,200));
- this.layer.addChild(this.enemy3);
- this.enemy3.runAction(cc.RotateBy.create(2,90,120));
- }
- });
以下是运行结果截图: