cocos随笔
随笔:
properties{
_shopId : 1,
shopId : {
set : function(value){
this._shopId = Math.floor(value)
},
get : function (){
return this._shopId;
}
}
}
this._callback && this._callback();
callback(callback,t){
this._callback = function (){
callback.call(t);
}
}
//英雄锁
Hero.lock = function(data,callback){//——Hero.lock—对应协议里’hero.lock’
———data对应{heroId : id}
———callback对应function(err,res){}
———callback(null,{goods : [ goods ]})对应res
var heroID = data.heroID;
db.Goods.get(heroID,function(err,hero){——获取
if(err){
return callback(err);
};
if(!hero){
return callback(Error.WrongGoodsId);
};
hero.parameter[0] = !hero.parameter[0];//0是false;1是true; db.Goods.set(hero.id,hero,function(err){——保存
if (err) return callback (err)
callback(null,{
goods : [goods]
})
})
})
};
//排序
//自定义排序方法,层层递归方法
var sortFormArr = $nd.BagForm[bagIndex].sort;
if (sortFormArr.length !== 1) {
var sortByForm = function (a, b, key, isSort) {
switch(key){
case 'order' :
return isSort > 0?a.parameter[2] - b.parameter[2]:b.parameter[2] - a.parameter[2];
break
case 'lv' :
return isSort > 0?a.parameter[1] - b.parameter[1]:b.parameter[1] - a.parameter[1];
break
case 'index':
return isSort > 0 ? a.index - b.index : b.index - a.index;
break
}
}
var sortFunIndex = 0;
var len = sortFormArr.length;
var sortFun = function(a,b){
if(sortFunIndex > len){
sortFunIndex = 0;
return;
}
var ccc = sortByForm(a,b,sortFormArr[sortFunIndex],sortFormArr[sortFunIndex+1]);
if(ccc == 0){
sortFunIndex+=2;
return sortFun(a,b);
}else{
sortFunIndex = 0;
return ccc;
}
}
bagGoods.sort(sortFun);
}
properties: {
spain : {
default : null,
type : sp.Skeleton,
tooltip : ‘动画’
}
},
//复制节点
cc.instantiate(this.spain.node);
//实例化
cc.instantiate(this.spain);
//复制动画节点
var newSpain = cc.instantiate(this.BattleData.spain.node);
target.roleNode.addChild(newSpain);
newSpain.getComponent('sp.Skeleton').setAnimation(0, 'Abiaoji', false);
/////////
// cc.loader.loadResAll('Battle', function(err, assets){
// if(err){
// return;
// }
// if(assets.length <= 0){
// return;
// }
// var newSpain = new cc.Node();
// target.roleNode.addChild(newSpain);
// newSpain.zIndex = -1;
// newSpain.x = target.roleNode.x -target.roleNode.width/2;
// newSpain.y = target.roleNode.y -target.roleNode.height/2;
// var dragonDisplay = newSpain.addComponent(dragonBones.ArmatureDisplay);
// for(var i in assets){
// if(assets[i] instanceof dragonBones.DragonBonesAsset){
// dragonDisplay.dragonAsset = assets[i];
// }
// if(assets[i] instanceof dragonBones.DragonBonesAtlasAsset){
// dragonDisplay.dragonAtlasAsset = assets[i];
// }
// }
// dragonDisplay.armatureName = 'Battle';
// dragonDisplay.playAnimation(name);
// })
//随着高度增加整体位置升高
//从左到右排列
createBuff : function(arr){
//每个元素的宽高
var w = 28;
var h = 28;
//y轴高度基准
var centerY = arr.length <= 4 ? 0 : Math.floor(arr.length / 4) * h / 2;
for(var i = 0 ; i < arr.length ; i ++ ){
var url = 'texture/battle/font/buff/' + arr[ i ].name;
var buffNode = NDTools.createSprite( url , w , h );
this.node.addChild( buffNode );
buffNode.x = ( ( 1 - arr.length ) * w / 2 + w * ( i % 4 ) ) * -1 ;
buffNode.y = centerY - h * Math.floor( i / 4 );
}
return (Math.ceil(arr.length / 4) - 1) / 2 * h;
}
//复制节点
var fireNode = cc.instantiate(newSpain.node);
//添加节点
this.node.addChild(fireNode);
//以为复制节点的时候,该动画节点是隐藏状态,所以复制过来也是隐藏的,需要重新打开显隐状态
fireNode.active = false;
var fire = fireNode.getComponent('sp.Skeleton’)
//指定动画名称
fire.defaultAnimation ='huo’;
//是否循环
fire.loop = true;
//‘huo’是动画的名字
fire.setAnimation(0,'huo',true);
cocos随笔的更多相关文章
- 麒麟子Cocos Creator实用技巧
大家好,我是麒麟子, 开源棋牌<幼麟棋牌-四川麻将>(泄漏版叫 <达达麻将>)作者,成都幼麟科技创始人. 自09年进入游戏行业以来,不知不觉已经度过了十个春秋. 曾经我也血气方 ...
- AI人工智能系列随笔
初探 AI人工智能系列随笔:syntaxnet 初探(1)
- 【置顶】CoreCLR系列随笔
CoreCLR配置系列 在Windows上编译和调试CoreCLR GC探索系列 C++随笔:.NET CoreCLR之GC探索(1) C++随笔:.NET CoreCLR之GC探索(2) C++随笔 ...
- C++随笔:.NET CoreCLR之GC探索(4)
今天继续来 带大家讲解CoreCLR之GC,首先我们继续看这个GCSample,这篇文章是上一篇文章的继续,如果有不清楚的,还请翻到我写的上一篇随笔.下面我们继续: // Initialize fre ...
- C++随笔:从Hello World 探秘CoreCLR的内部(1)
紧接着上次的问题,上次的问题其实很简单,就是HelloWorld.exe运行失败,而本文的目的,就是成功调试HelloWorld这个控制台应用程序. 通过我的寻找,其实是一个名为TryRun的文件出了 ...
- 使用“Cocos引擎”创建的cpp工程如何在VS中调试Cocos2d-x源码
前段时间Cocos2d-x更新了一个Cocos引擎,这是一个集合源码,IDE,Studio这一家老小的整合包,我们可以使用这个Cocos引擎来创建我们的项目. 在Cocos2d-x被整合到Cocos引 ...
- 触控的手牌—Cocos Creator
科普 Cocos Creator是触控最新一代游戏工具链的名称.如果不太清楚的,可以先看一些新闻. 新编辑器Cocos Creator发布: 对不起我来晚了! http://ol.tgbus.co ...
- ASP.NET MVC 系列随笔汇总[未完待续……]
ASP.NET MVC 系列随笔汇总[未完待续……] 为了方便大家浏览所以整理一下,有的系列篇幅中不是很全面以后会慢慢的补全的. 学前篇之: ASP.NET MVC学前篇之扩展方法.链式编程 ASP. ...
- 使用Beautiful Soup编写一个爬虫 系列随笔汇总
这几篇博文只是为了记录学习Beautiful Soup的过程,不仅方便自己以后查看,也许能帮到同样在学习这个技术的朋友.通过学习Beautiful Soup基础知识 完成了一个简单的爬虫服务:从all ...
随机推荐
- java hashset输出
for (Map.Entry<String, String> me : id_label_map.entrySet()) { System.out.println(me.getKey() ...
- 测开之路一百五十四:ajax+json前后台数据交互
在实际工作中,前后端数据交互大部分都是用的json格式,后端把数据处理完后,把json传给前端,前端再解析 项目结构 models里面加入把数据转为字典的方法 from datetime import ...
- 宝塔面板修改用户名和密码报错:TypeError: cannot concatenate 'str' and 'NoneType' objects
[root@dapao~]# bt 14 正在执行(14)... ================================================================== ...
- linux使用ltrace和strace跟踪程序执行过程
yum install strace yum install ltrace 1.strace ping -c 1 www.baidu.com 2.ltrace ping -c 1 www.baid ...
- 在树莓派上搭建jupyter notebook server
自从搬家后,树莓派闲置了好一段时间,最近打算将其利用起来.想来想去,搭个jupyter notebook用要靠谱的,毕竟经常要实验一些Python脚本. 具体过程参考以下链接: https://www ...
- kafka学习(三)
kafka 消费者-从kafka读取数据 消费者和消费者群里 kafka消费者从属于消费者群组.一个群组里的消费者订阅的是同一主题,每个消费者接受主题一部分分区的消息.如果我们往群组里添加更多的消 ...
- MySQL-快速入门(12)备份、还原
1.数据备份 1>使用MySQLdump命令备份(主要的方式) //备份数据库中某张表(去掉表的限定,就是备份指定数据库)//备份脚本可以重新创建表及插入数据mysqldump -u user ...
- 关于Java多线程的一些面试问题
1.ArrayList和Vecoter区别? Array和ArrayList的异同点一.Array和ArrayList的区别#1. Array类型的变量在声明的同时必须进行实例化(至少得初始化数组的大 ...
- Java 多线程编程之:notify 和 wait 用法
wait 和 notify 简介 wait 和 notify 均为 Object 的方法: Object.wait() —— 暂停一个线程 Object.notify() —— 唤醒一个线程 从以上的 ...
- [BZOJ3133] [Baltic2013]ballmachine(树上倍增+堆)
[BZOJ3133] [Baltic2013]ballmachine(树上倍增+堆) 题面 有一个装球机器,构造可以看作是一棵树.有下面两种操作: 从根放入一个球,只要下方有空位,球会沿着树滚下.如果 ...