cc.Node—Action
1: Action类是动作命令,我们创建Action,然后节点运行action就能够执行Action的动作;
2: Action分为两类: (1) 瞬时就完成的ActionInstant, (2) 要一段时间后才能完成ActionIntervial;
3: cc.Node runAction: 节点运行action;
4: cc.moveTo, cc.moveBy To: 目标 By: 变化;
5: cc.roateBy, cc.rotateTo;
6: cc.scaleBy, cc.scaleTo;
7: cc.fadeOut(淡出), cc.fadeIn(淡入): cc.fadeTo();
8: cc.callFunc, cc.delayTime;
9: cc.sequnce, cc.repeat, cc.repeatForever;
10: Action easing(缓动的方式): 加上缓动特效, cc.easeXXXXX查看文档设置自己想要的缓动对象;
11: stopAction: 停止运行action;
12: stopAllActions: 停止所有的action;
var mto = cc.moveTo(1, cc.p(100, 100)); // cc.moveTo(1, x, y);
this.node.runAction(mto);
var mby = cc.moveBy(5, cc.p(100, 100)); // cc.moveBy(1, x, y); 变化多少
this.node.runAction(mby); // rotate
var rto = cc.rotateTo(1, 180); // 旋转到180度; rotation 180;
this.node.runAction(rto);
var rby = cc.rotateBy(1, 75); // 在原来的基础上,变化75,可正,可负
this.node.runAction(rby);
console.log('初始宽:%f,高:%f', this.node.width, this.node.height); //
// scale
this.node.scale = 3;
var sto = cc.scaleTo(1, 1.5); // 到1.1倍
this.node.runAction(sto);
console.log('scaleTo 1.5宽:%f,高:%f', this.node.width, this.node.height); // var sby = cc.scaleBy(1, 1.5); // 原来的基础,变化1.5 * node.scale
this.node.runAction(sby);
console.log('scaleBy 1.5宽:%f,高:%f', this.node.width, this.node.height); //
//this.node.setContentSize(); // opactify
console.log('渐显效果');
var fin = cc.fadeIn(5); //渐显效果,返回 ActionInterval,参数 持续时间/秒
this.node.opacity = 0.5;
this.node.runAction(fin);
console.log('渐隐效果');
var fout = cc.fadeOut(1); //渐隐效果,返回 ActionInterval,参数 持续时间/秒
this.node.runAction(fout); // 物体还是在的的
var fto = cc.fadeTo(1, 128); //修改透明度到指定值,返回 ActionInterval,参数 duration、opacity(0-255透明底)
this.node.runAction(fto); // function Action
var func = cc.callFunc(function() {
console.log("callFunc at here");
}.bind(this)); console.log("begin ####");
this.node.runAction(func);
console.log("end ####"); // 移动到 目的地,后,隐藏这个物体怎办? // 命令清单(按顺序执行action命令) [Action1, A2, A3],
// seq Action
var m1 = cc.moveTo(1, 100, 100);
var fout = cc.fadeOut(0.5); var seq = cc.sequence([m1, fout]);
this.node.runAction(seq); // 一个节点可以同时运行多个Action, 一边,一边
var m1 = cc.moveTo(1, 100, 100);
var fout = cc.fadeOut(0.5); this.node.runAction(fout);
this.node.runAction(m1); // 不断的放大缩小
var s1 = cc.scaleTo(0.8, 1.1);
var s2 = cc.scaleTo(0.8, 0.8);
var seq = cc.sequence([s1, s2]);
var rf = cc.repeatForever(seq);
this.node.runAction(rf);
// 匀速的飞过, 缓动对象
// 回弹
this.node.y = 0;
var m = cc.moveTo(1, 100, 0).easing(cc.easeBackOut());
this.node.runAction(m);
var r = cc.rotateBy(3, 360).easing(cc.easeCubicActionOut());
var rf = cc.repeatForever(r);
this.node.runAction(rf); //this.node.stopAction(rf);//停止指定Action
//this.node.stopAllActions();//停止所有Action
// end // 移动了到100, 0,删除
var m = cc.moveTo(1, 100, 0);
var end_func = cc.callFunc(function() {
this.node.removeFromParent();
}.bind(this));
var seq = cc.sequence([m, end_func]);
this.node.runAction(seq);
// cc.Delay 延迟,参数:延迟时间/秒
var d1 = cc.delayTime(3);
var fout = cc.fadeOut(0.5);
var end_func = cc.callFunc(function() {
this.node.removeFromParent();
}.bind(this)) var seq = cc.sequence([d1, fout, end_func]);
this.node.runAction(seq);
cc.Node—Action的更多相关文章
- cc.Node 的坐标空间与ACTION的学习
1.创建二维的向量坐标 //创建向量坐标方法一 let new_pos1 = new cc.Vec2(100, 100); //创建向量坐标方法二 let new_pos2 = cc.v2(200, ...
- cc.Node—场景树
对于cc.Node我分了四个模块学习: 1.场景树,2.事件响应,3.坐标系统,4.Action的使用:在此记录经验分享给大家. 场景树 1: creator是由一个一个的游戏场景组成,通过代码逻辑来 ...
- Cocos Creator cc.Node.点击事件
触摸事件 1.触摸事件的类型:START触摸启动,MOVED移动,ENDED弹起来,CANCEL取消; ENDED和CANCEL区别是ENDED物体内弹起来,CANCEL是在物体外范围弹起. 2.监听 ...
- <7>Cocos Creator 节点 cc.Node
1.简介 节点(cc.Node)是渲染的必要组成部分.所有需要在游戏场景中显示的内容都必须是节点或者依附于节点之上.节点负责控制显示内容的位置.大小.旋转.缩放.颜色等信息. 2.节点属性 1: na ...
- cc.Node—坐标系统
cc.Vec21: cc.Vec2 二维向量坐标, 表结构{x: 120, y: 120}; cc.v2(x, y) 创建一个二维向量 cc.p() 创建一个二外向量;2: cc.pSub: 向量相减 ...
- cc.Node—事件响应
触摸事件1: 触摸事件类型: START, MOVED, ENDED(物体内), CANCEL(物体外);2: 监听触摸事件: node.on(类型, callback, target(回掉函数的th ...
- cc.Sprite
Classcc.Sprite Defined in: CCSprite.js Extends cc.NodeRGBA Class Summary Constructor Attributes Cons ...
- Cocos2d-JS中的cc.LabelAtlas
cc.LabelAtlas是图片集标签,其中的Atlas本意是“地图集”.“图片集”,这种标签显示的文字是从一个图片集中取出的,因此使用cc.LabelAtlas需要额外加载图片集文件.cc.Labe ...
- Cocos2d-JS中的cc.LabelTTF
cc.LabelTTF是使用系统中的字体,它是最简单的标签类.cc.LabelTTF类图如下图所示,可以cc.LabelTTF继承了cc.Node类,具有cc.Node的基本特性. LabelTTF类 ...
随机推荐
- 【bzoj1452】[JSOI2009]Count
二维树状数组 #include<iostream> #include<cstdio> #include<cstring> using namespace std; ...
- C中 数组和指针的异同
数组在很多情况下是和指针等价的,数组的下标运算和指针的解引用也有等价形式:arr[i] == *(arr + 1):但是也有一些情况下数组和指针是不一样的:extern int arr[]; exte ...
- 洛谷P2831 愤怒的小鸟——贪心?状压DP
题目:https://www.luogu.org/problemnew/show/P2831 一开始想 n^3 贪心来着: 先按 x 排个序,那么第一个不就一定要打了么? 在枚举后面某一个,和它形成一 ...
- bzoj 4424: Cf19E Fairy && codeforces 19E. Fairy【树形dp】
参考:https://blog.csdn.net/heheda_is_an_oier/article/details/51131641 这个找奇偶环的dp1真是巧妙,感觉像tarjan一样 首先分情况 ...
- bzoj 4596: [Shoi2016]黑暗前的幻想乡【容斥原理+矩阵树定理】
真是简单粗暴 把矩阵树定理的运算当成黑箱好了反正我不会 这样我们就可以在O(n^3)的时间内算出一个无向图的生成树个数了 然后题目要求每个工程队选一条路,这里可以考虑容斥原理:全选的方案数-不选工程队 ...
- bzoj 1634: [Usaco2007 Jan]Protecting the Flowers 护花【贪心】
因为交换相邻两头牛对其他牛没有影响,所以可以通过交换相邻两头来使答案变小.按照a.t*b.f排降序,模拟着计算答案 #include<iostream> #include<cstdi ...
- Java多线程(十)线程间通信 join
若果主线程想等待子线程执行完成之后再结束,可以用join方法 join 和sleep区别 join内部有wait实现,所以当执行join方法后,当前线程的锁被释放,那么其他线程就可以调用此线程的同步方 ...
- Linux文件详解
一.Linux文件类型分:普通文件.目录文件.链接文件.设备文件.管道文件. 1.普通文件:由ls -al显示属性时,第一个属性为 [-],例如 [-rwxrwxrwx].包括: 纯文本文件(ASCI ...
- [Code+#1]大吉大利,晚上吃鸡!
输入输出样例 输入样例#1: 7 7 1 7 1 2 2 2 4 2 4 6 2 6 7 2 1 3 2 3 5 4 5 7 2 输出样例#1: 6 输入样例#2: 5 5 1 4 1 2 1 1 3 ...
- 二分+RMQ/双端队列/尺取法 HDOJ 5289 Assignment
题目传送门 /* 题意:问有几个区间最大值-最小值 < k 解法1:枚举左端点,二分右端点,用RMQ(或树状数组)求区间最值,O(nlog(n))复杂度 解法2:用单调队列维护最值,O(n)复杂 ...