用户:
爱探险的可乐呀查看:0 回复:7 评论:0 创建时间:2020-10-06T14:43:09
Hello大家好
这里是可乐
我又来发教程帖啦~
上次我讲了Box3的常用事件(详情见https://shequ.codemao.cn/community/344422)
这次我们来讲常用方法
1.系统说话,每个人都可以在聊天框里看见
示例代码:
world.say('大家好我是可乐');//系统广播消息
可乐尽量把每一行代码都写上注释![]()
2.给某个玩家发送一条私信
只有这个玩家能看见,其他玩家都不能看见
而且这行代码必须在一个事件里,而且这个事件的函数变量必须有entity
如果没有在一个事件里,就会报错:ReferenceError: entity is not defined(entity未定义)
(也可以用在querySelectorAll中,后面会讲到)
示例代码:
world.onPlayerJoin(({ entity }) => {//当玩家进入时
entity.player.directMessage('你好');//给玩家发送一条私信“你好”
})//万能框架
world.onChat(({ entity }) => {//当玩家聊天(说话)时
if (entity.player.name === '爱探险的可乐呀') {//如果说话的人的昵称是“爱探险的可乐呀”
entity.player.directMessage('可乐你好')//私信“可乐你好”
}//if的大括号不能少
})//万能框架
3.世界播放声音,所有玩家可听到
示例代码:
world.sound('audio/drama.mp3');
4.实体播放声音,仅自己可听到
这行代码必须在一个事件里,而且这个事件的函数变量必须有entity
如果没有在一个事件里,就会报错:ReferenceError: entity is not defined(entity未定义)
(也可以用在querySelectorAll中,后面会讲到)
(是的 和directMessage的注意事项是一样的,所以可乐照抄了一遍
)
示例代码:
world.onPlayerJoin(({ entity }) => {//当玩家进入时
entity.sound('audio/drama.mp3');//播放drama.mp3,仅自己能听到
})//万能框架
5.world.querySelector(搜索满足条件的第一个实体)
示例代码:
var entity = world.querySelector('#实体');//搜索名叫“实体”的模型,并储存到entity变量中
var _entity = world.querySelector('.eb');//搜索标签为“eb”的模型,并储存到_entity变量中
6.world.querySelectorAll(搜索满足条件的所有实体,这个方法可乐还是觉得蛮重要的)
示例代码:
var entity = world.querySelectorAll('.eb');//搜索全部标签为“eb”的模型,并储存到entity变量中
而且
这个代码还有一种用法——
万能框架:
搜索实体,并让它(们,也就是搜索的实体)执行相应的代码
示例代码:
world.querySelectorAll('player').forEach((e) => {//搜索全部玩家并储存到e变量中
e.player.directMessage('你好');//发送私信“你好”
})//万能框架
7.伤害
(必须把entity.enableDamage(可伤害)设成true才行哦~)
示例代码:
world.onPlayerJoin(({ entity }) => {//当玩家进入时
entity.enableDamage = true;//设置玩家为可伤害
})//万能框架
world.onTick(() => {//当游戏更新(触发tick)时,1tick=喵ms
world.querySelectorAll('player').forEach((e) => {//搜索所有玩家并储存到e变量中
e.hurt(15);//伤害15点生命值
})//万能框架
})//万能框架
好了今天的教程就到这里了

更多代码请看API
我是可乐
我们下期见
拜拜~