cocos2dx-js Action(动作模块)
animationSample : function () {
//1.瞬时动作(在一帧内执行结束的动作)
// this.instantAction();
//2.持续动作
this.intervalAction();
},
/*******************************ActionInterval持续动作*******************************************/
/*******************************1.持续一定时间才能完成********************************************/
/*******************************2.分属性变化动作和视觉特效动作************************************/
intervalAction: function () {
this.myPig.runAction(this.intervalAction_spaw());
},
//moveTo(属性变化)
intervalAction_moveTo:function () {
var action = cc.moveTo(0.5,cc.p(300,450));
return action;
},
//moveBy(属性变化)
intervalAction_moveBy:function () {
var action = cc.moveBy(0.5,cc.p(300,450));
return action;
},
//jumpTo 10s 调到(300,450),跳跃高度300像素,总共跳5次(属性变化)
intervalAction_jumpTo:function () {
var action = cc.jumpTo(10,cc.p(300,450),300,5);
return action;
},
//jumpBy 原地跳5次,跳跃高度300像素(属性变化)
intervalAction_jumpBy:function () {
var action = cc.jumpBy(10,cc.p(0,0),300,5);
return action;
},
//bezierTo 贝塞尔曲线运动,由中点移动至右下(属性变化)
intervalAction_bezierTo :function () {
//起点为界面中点
var bezierConfig = [
cc.p(this.designSize.width/2.0,this.designSize.height),//起点控制点
cc.p(this.designSize.width,this.designSize.height),//终点控制点
cc.p(this.designSize.width,0)//终点
];
var action = cc.bezierTo(1,bezierConfig);
return action;
},
//scaleTo(属性变化)
intervalAction_scaleTo:function () {
var action = cc.scaleTo(0.6,0.1);
return action;
},
//scaleBy(属性变化)
intervalAction_scaleBy:function () {
var action = cc.scaleBy(0.6,0.1);
return action;
},
//rotateTo(属性变化)
intervalAction_rotateTo:function () {
var action = cc.rotateTo(0.6,-90,-45);//正-顺时针 x轴转到-90度 y轴转到-45度
return action;
},
//rotateBy(属性变化)
intervalAction_rotateBy:function () {
var action = cc.rotateBy(0.6,-90);//正-顺时针 整体旋转
return action;
},
//fadeIn(视觉特效)
intervalAction_fadeIn :function () {
this.myPig.setOpacity(0.0);
var action = cc.fadeIn(0.6);
return action;
},
//fadeTo(视觉特效)
intervalAction_fadeTo :function () {
this.myPig.setOpacity(0.0);
var action = cc.fadeTo(0.6,100);
return action;
},
//fadeOut(视觉特效)
intervalAction_fadeOut :function () {
var action = cc.fadeOut(0.6);
return action;
},
//tintTo(视觉特效)
intervalAction_tintTo:function () {
var action = cc.tintTo(0.5,255,255,0);
return action;
},
//blink(视觉特效)
intervalAction_blink:function () {
var action = cc.blink(1,2);
return action;
},
//delayTime
intervalAction_delayTime:function () {
var action = cc.moveBy(1,100,100);
var delay = cc.delayTime(1);
var seq = cc.sequence(delay,action);
return seq;
},
//repeat
intervalAction_repeat:function () {
var action = cc.rotateBy(0.5,-90);
var repeat = action.repeat(5);
return repeat;
},
//repeatForever
intervalAction_repeatForever:function () {
var action = cc.rotateBy(0.5,-90);
var repeat = action.repeatForever();
return repeat;
},
//sequence
intervalAction_sequence:function () {
var action = cc.rotateBy(0.5,-90);
var action1 = cc.moveBy(0.5,100,0);
var action2 = cc.blink(0.5,3);
var se = cc.sequence(action,action1,action2);
return se;
},
//spaw
intervalAction_spaw:function () {
var action = cc.rotateBy(0.5,-90);
var action1 = cc.moveBy(0.5,100,0);
var action2 = cc.blink(0.5,3);
var se = cc.spawn(action,action1,action2);
return se;
},
/*******************************ActionInstant瞬时动作*******************************************/
/*******************************1.瞬时动作(在一帧内执行结束的动作)*******************************/
/*******************************2.瞬时动作一般配合复合动作使用***********************************/
instantAction : function () {
// this.myPig.setVisible(true);
//place
this.myPig.runAction(this.instantAction_callFun());
},
//place
instantAction_place: function () {
var place = cc.place(100,100);
return place;
},
//flipX 水平翻转
instantAction_flipX: function () {
var action = cc.flipX(true);
return action;
},
//flipY 垂直翻转
instantAction_flipY: function () {
var action = cc.flipY(true);
return action;
},
//show 直接到修改的visible属性 直接设置为可见
instantAction_show: function () {
var action = cc.show();
return action;
},
//hide 直接到修改的visible属性 直接设置为不可见
instantAction_hide: function () {
var action = cc.hide();
return action;
},
//ToggleVisiability 可切换节点的可见,当节点可见时,执行此动作,则切换为不可见。
instantAction_toggleVisibility: function () {
var action = cc.toggleVisibility();
return action;
},
//removeSelf 将执行此动作的节点从其父节点上面移除,本质上调用了节点的removeFromParent方法
instantAction_removeSelf: function () {
var action = cc.removeSelf();
return action;
},
//callFun 多结合复合动作使用
instantAction_callFun: function () {
var move = cc.moveTo(0.6,cc.p(100,100));
var callFunc = cc.callFunc(function () {
cc.log("已经移动到制定坐标");
}.bind(this));
var seq = cc.sequence(move,callFunc);
return seq;
},