LayaBox
honey199396
记录自己工作中遇到的点点滴滴沟壑。
展开
-
LayaBox -- 加载Json数据
其实LayaBox加载Json还是蛮简单的,但是作为新手来说,其实也不容易,下面放出解决方法,在类比一下就知道有多容易了。 新建laya.json文件放入到bin目录下// laya.json{ "name": "deng", "age": 17, "sex": "male", "phone:": "12345678"}原创 2018-03-14 18:26:46 · 9486 阅读 · 2 评论 -
Layabox -- 通过类型实例化对象 与 获取对象类型名
如果你在写Layabox对象池的时候不小心看到这篇文章,那么恭喜你,你写出来的对象池将会和Unity对象池一样方便灵活。这篇文章将会把Egret、Layabox,如何通过类型获取类型名,如何通过对象获取类型名告诉大家。一、Layabox1、通过类型获取类型名并实例化一个对象,下面是我写的一个在对象池中根据类型名取出一个对象或实例化一个对象的方法。重点是ClassZ.name /** ...原创 2019-03-04 12:11:16 · 3241 阅读 · 0 评论 -
LayaBox -- 使用Date获取当前系统时间
LayaBox有一个Laya.timer的类,可以获取当前游戏运行帧数,添加update,等功能,同时也有一个Date类,用来获取系统时间。 系统时间如下: private getSystemTime(): string { var curDate: Date = new Date(); var month: number = curDate.getMo...原创 2018-03-28 11:42:20 · 7245 阅读 · 0 评论 -
LayaBox -- 使用滤镜实现图片黑白效果
项目中,如果我们想讲一个还没有购买的任务隐藏掉,抹掉他的色彩或者直接将其设置为黑色,LayaBox中给我们提供了一种滤镜的功能可以实现上面的要求。/** * 将角色设置为灰色的。 */ private grayingRole(roleImg: Laya.Image): void { //由 20 个项目(排列成 4 x 5 矩阵)组成的数组,灰图 ...原创 2018-03-27 17:49:03 · 3729 阅读 · 0 评论 -
LayaBox -- 实现ScrollView效果
这一篇我们实现一个简易的ScrollView效果,先看一下效果图。 为什么要实现,我们在自己项目中,如果商店界面或者选择角色界面有需要居中显示,或者居中放大等效果的时候,使用自带的List就不能满足我们的要求了,这个时候自己实现一个是最好的。 由于基本都是代码,所以上代码是最舒服的。自己创建一个叫ScrollView的ts文件。由于自己只需要横向的,所以ScrollView只实现了横向的效...原创 2018-03-27 17:39:24 · 9708 阅读 · 13 评论 -
LayaBox -- List组件的使用
本节我们使用LayaBox 自带List组件实现了一个排行榜界面,由于List组件限制很多,我们下篇自己实现一个类似Unity ScrollView的效果。list滑动效果如下:排行榜里面的数据,头像等都是随便写上去的,而且分数也没有实现从高到低的排序,我们现在只是做出上图的效果。一、UI效果制作 a. 创建一个View类型的UI页面,RankList.ui。b. 制作返回按钮和上面...原创 2018-03-27 17:31:05 · 16949 阅读 · 2 评论 -
LayaBox Bug -- Laya.SoundManager.playMusic 播放不出音效,并且预加载也会出错
LayaBox 有两个可以播放音乐相关的接口,一个是playMusic,一个是playSound。/** * 播放背景音乐。背景音乐同时只能播放一个,如果在播放背景音乐时再次调用本方法,会先停止之前的背景音乐,再播发当前的背景音乐。 * @param url 声音文件地址。 * @param loops 循环次数,0...原创 2018-04-02 18:35:01 · 5414 阅读 · 1 评论 -
LayaBox Bug -- number类型精度问题
当然这个标题是有问题的,与其说是LayaBox的number精度问题还不如说是TypeScript的精度问题,或者说是JavaScript的精度问题。先看一个测试用例和输出看看这个问题有多严重。class Degree{ constructor(){ Laya.init(600, 400); let result = 0; for (...原创 2018-03-21 18:42:22 · 1319 阅读 · 0 评论 -
LayaBox -- 动态增加分数效果
LayaBox在API上面用起来还是很不方便的,比如我想定时loop一个东西,但是有循环次数,LayaBox就没有提供这样的接口,接下来我们要实现一个动态增加分数的效果,如果可以固定次数的loop就会变得很简单,但,没有就算了,我们自己实现以下就可以了。游戏结算面板分数实现一个像定时器一样的动态增加分数效果,废话不说直接上一下代码: // 显示分数 private show...原创 2018-03-21 18:34:02 · 1950 阅读 · 0 评论 -
LayaBox Bug -- Cannot connect to runtime process, timeout after 10000 ms
有时候你会使用layaair调试,一切都正常,可是等你切换到Chrome调试的时候,出现了Cannot connect to runtime process, timeout after 10000 ms - (reason: Got a response from the target app, but no target pages found).错误,(或者chrome正常,layaair调...原创 2018-03-14 17:08:38 · 8457 阅读 · 0 评论 -
TypeScript -- ==、===、!=、!==
经常遇到使用===的情况,明明==就能表达了,为什么还用===呢,下面给出Js对应符号的意义。JavaScript中的=、== 、!==、===的用法和区别。var num = 11;var str = '11';var test = 11;test == num //true 相同类型 相同值test === num //true 相同类型 相同值test !== num //false原创 2018-03-13 14:32:14 · 10598 阅读 · 2 评论 -
TypeScript -- 存取器(set,get)
TypeScript语法请看TypeScript中文网这里我们主要是看一下存取器,也就是get,set方法。 在C#中,我们使用存取器的方法是 public int m_Life = 0; public int Life { get { return m_Life; } set...原创 2018-03-13 14:19:16 · 47340 阅读 · 4 评论 -
LayaBox Bug -- “加载游戏失败,可能由于您的网络不稳定,请退出重进”
构建LayaBox的iOS工程后,在摸索了一阵iOS证书,账号等问题,我们终于将工程在模拟器上运行起来了,结果出现了下面的图,我们一脸懵逼,各种查资料,找解决方案。一个字形容,坑爹啊。好吧,下面我们来说说解决方法,这是我经过多次查找与测试的结果,如果有不一样的或者直接成功的,请告诉我。首先按照官方给的教程看看是否可以解决这个问题先将项目发布 会在工程生成一个release的...原创 2018-03-12 19:00:41 · 5071 阅读 · 0 评论 -
LayaBox -- TypeScript中Matter.js的使用示例
在LayaBox官方物理引擎示例中使用的是Matter.js,但并不是说Laya只能使用Matter.js作为他的物理引擎,其他的像Box2D,p2等都可以使用的,但是我们现在来说一说TypeScript怎么使用Matter.js 1. 首先,Matter.js的安装,这里有Matter.js的下载安装方法,自己搞定。同时还有示例,API等。 2. 使用,你需要在index.html文件中引用...原创 2018-03-16 18:57:21 · 6976 阅读 · 8 评论 -
LayaBox -- 类型转换(基础数据类型转换,强制类型转换)
1、基础类型转换(string转number类型,number转string类型)class TypeChange { constructor() { this.print(); } age: number = 20; ageStr: string = "20"; ageNull: string; public print(...原创 2018-03-15 16:40:58 · 3778 阅读 · 0 评论 -
Layabox -__awaiter is not defined和TypeScript error: Error TS2468: Cannot find global value 'Promise'
上面对问题做一下总结:在Layabox中出现不能使用Promise的情况,1、不能使用Promise。2、在async函数中不能使用await。一、不能使用Promise,原因是Laya并没有对Promise申明。这个时候我们需要自己申明一个Promise的ts文件就可以了。在根目录的libs中创建extend.d.ts文件,并将一下代码拷入其中(不用去看这个),你就可以使用Promise...原创 2019-03-07 18:38:37 · 5465 阅读 · 8 评论