当前位置:网站首页>LayaBox---知识点
LayaBox---知识点
2022-08-04 21:00:00 【格拉格拉】
目录
5.代码发生变动,如新增公有变量。需手动切换鼠标选中物体,再选回来才会刷新。
6.定义的公有物体变量node 没有坐标属性,需进行类型转换
1.visualcode---配置model快捷模版
code---首选项---配置用户代码片段
2.定义在属性面板显示的变量
/** @prop {name:intType, tips:"整数类型示例", type:Int, default:1000}*/
public intType: number = 1000;
/** @prop {name:numType, tips:"数字类型示例", type:Number, default:1000}*/
public numType: number = 1000;
/** @prop {name:strType, tips:"字符串类型示例", type:String, default:"hello laya"}*/
public strType: string = "hello laya";
/** @prop {name:boolType, tips:"布尔类型示例", type:Bool, default:true}*/
public boolType: boolean = true;
/** @prop {name:shoe,tips:"物体",type:Node,default:null}*/
public shoe = null;
// 更多参数说明请访问: https://ldc2.layabox.com/doc/?nav=zh-as-2-4-0
3.获取脚本挂载物体组件
this.owner.getComponent(Laya.RigiBody);
4.删除已挂载的脚本,还得在挂载物体上删除引用。
5.代码发生变动,如新增公有变量。需手动切换鼠标选中物体,再选回来才会刷新。
6.定义的公有物体变量node 没有坐标属性,需进行类型转换
2d:
public get gameObject():Laya.Sprite
{
return this.owner as Laya.Sprite;
}
3d:
public get gameObject():Laya.Sprite3D
{
return this.owner as Laya.Sprite3D;
}
-------------------------------------------------
public get transform():Laya.Transform
{
return this.gameObject.transform;
}
7.Laya脚本参数说明
8.Laya事件广播与接收
广播事件:
Laya.stage.event("事件名");
接收事件:
onAwake()
{
//添加监听
Laya.stage.on("事件名",this,this.reset);
}
private reset(){
//.....
}
onDestroy(){
//移除监听
Laya.stage.off("事件名",this,this.reset);
}
9.插值
Laya.MathUtill.lerp(curObj.x,targetObj.x,Laya.timer.delta/1000 * speed);
10.勾股定理 求距离
a*a + b*b = c*c;
c = Math.sqrt(a*a + b*b);
11.随机值
private getRandom(min, max)
{
let value = max - min;
value = Math.random() * value;
return value + min;
}
12.获取键盘按键
1.
onUpdate()
{
if (Laya.KeyBoardManager.hasKeyDown(Laya.Keyboard.A))
{
this.rig.setVelocity({ x: -10, y: this.rig.linearVelocity.y });
} else if (Laya.KeyBoardManager.hasKeyDown(Laya.Keyboard.D))
{
this.rig.setVelocity({ x: 10, y: this.rig.linearVelocity.y });
}
}
2.
onKeyDown(e)
{
//console.log(e.nativeEvent.key+".........2");
if (e.nativeEvent.key == " " && this.canJump)
{
this.canJump = false;
this.rig.setVelocity({ x: this.rig.linearVelocity.x, y: -13 });
}
}
3.
onKeyPress(e)
{
console.log(e.nativeEvent.key+".........1");
if(e.nativeEvent.key == "a")
{
}
}
13.代码获取游戏内物体
//查找一级物体
Laya.stage.getChildByName("Player");
//查找本物体下的子物体
this.owner.getChildByName("子物体名");
14.音乐音效播放
//播放音乐
Laya.soundManager.playMusic(“地址/music.mp3”,0); //0为无限循环
//单纯播放音效
Laya.SoundManager.playSound("sound/BallHit-01.mp3");
//播放完成后加事件
Laya.SoundManager.playSound("sound/startWistle.mp3",1,
new Laya.Handler(this,()=>{
Laya.stage.event("StartGame"); //广播--开始游戏
}));
边栏推荐
猜你喜欢
五分钟入门文本处理三剑客grep awk sed
使用堡塔应用管理器配置laravel队列方法
【debug】postgres数据存储错乱
零知识证明笔记——私密交易,pederson,区间证明,所有权证明
【一起学Rust | 进阶篇 | Service Manager库】Rust专用跨平台服务管理库
Interviewer: How is the expired key in Redis deleted?
[2022 Hangzhou Electric Multi-School 5 1003 Slipper] Multiple Super Source Points + Shortest Path
暴雨中的人
How to carry out AI business diagnosis and quickly identify growth points for cost reduction and efficiency improvement?
【学术相关】清华教授发文劝退读博:我见过太多博士生精神崩溃、心态失衡、身体垮掉、一事无成!...
随机推荐
node 的运行命令
SAP ABAP OData 服务如何支持 $select 有选择性地仅读取部分模型字段值试读版
win10 uwp modify picture quality compress picture
知识分享|如何设计有效的帮助中心,不妨来看看以下几点
文章复现:超分辨率网络-VDSR
简单理解 JS 事件循环
dotnet 启动 JIT 多核心编译提升启动性能
MySQL字段类型
搭建MyCat2一主一从的MySQL读写分离
两种白名单限流方案(redis lua限流,guava方案)
【TypeScript】深入学习TypeScript枚举
项目难管理?先学会用好甘特图(内附操作方法及实用模板)
数据仓库(1)什么是数据仓库,数仓有什么特点
vs Code 运行一个本地WEB服务器
Matlab画图2
Big capital has begun to flee the crypto space?
win10 uwp 修改图片质量压缩图片
密码学系列之:PEM和PKCS7,PKCS8,PKCS12
MySQL field type
bracket matching