简单的示例1
:::tip
https://box3.yuque.com/staff-khn556/wupvz3/bad2x01spernsty1
为了您更好的上手,在编辑节点同时,可以看看官方的API说明。
:::
需求
当玩家进入地图后,世界广播:【玩家名称】进入了地图,大家欢迎!
。
分析&实现
- 实现玩家进入地图的时候触发,需要什么节点呢?
如果你看过官方文档中世界模块中的API,那一定会说:world.onPlayerJoin()
👏没错!就是它。
- 那么,我们在节点区,按下
鼠标右键
,调出节点列表,搜索world.onPlayerJoin()
,当然你只需要搜索关键字即可,不需要全部输入完。例如只输入join
。甚至中文搜索也是可以的,例如只输入加入
👍恭喜你,你已经会找节点了~
我们点击一下这个节点,他将会出现到节点编辑器,这个时候,我们就能进行操作。
我们把
Begin - 开始节点
的输出执行端点与world.onPlayerJoin()
的输如执行端点连接起来。就如这样:
这个时候,代码编辑器会显示以下代码:
👍恭喜你,你已经会连接节点了~
- 好,我们已经实现了当玩家进入地图监测,那么,如何世界广播呢?
还是那句话,如果你看过官方文档中世界模块中的API,那一定会说:world.say()
👏没错!就是它。
刚才讲过如何找节点了,现在这里不再说明了,想想看,如何找呢?
如果你成功了,将会是这种情况:
考考你,这个
world.onPlayerJoin()
有两个执行输出端口,world.say()
的执行输入端口应该链接哪个呢?(有基础的可以跳过,你懂的
当然,这个对于你的编程基础有关,同时也和官方定义的api有关,会涉及到函数
。
:::info
说明world.onPlayerJoin(Callback)
中的Callback
为把需要处理的函数,也就是自己实现的,然后调用这个当玩家进入地图监听调用事件,这个是岛3官方实现的,我们可以无需了解。
也就是:当玩家进入游戏时,会调用Callback
这个函数。
:::我们的需求是什么,当玩家进入地图时,才世界广播。
条件是:玩家进入地图才世界广播,其他情况不执行。
所以,我们连接到functionBody
中,成为它的函数体。
这个时候,代码编辑器会显示以下代码:
👏没错!你已经实现了当玩家加入地图时就会世界广播。
现在,广播的内容没有定义给他,我们看看广播的内容:
【玩家名称】进入了地图,大家欢迎!
。其中【玩家名称】是进入玩家的名称,这个是要动态的。该如何实现呢?其实也不难,官方文档里面有的,那就是
entity.player.name
这个是获取玩家的名称,是一种属性。我们在节点列表中找到并且调出。那么,我们把
entity.player.name
与world.say()
的message
互相连接。这个时候,应该是这样的
这个时候,代码编辑器会显示以下代码:
:::tip
目前代码已经ok了,这个时候你如果向运行代码,看看效果,你可以复制代码编辑器的代码,然后到岛3地图代码编辑器中粘贴,运行即可。
类似于这样:
关闭代码编辑器,运行,你会发现世界广播你的名字了~
👏太棒了,你已经用节点编辑器创建了一个能运行的作品了。继续加油。
:::
现在可以获取玩家名称了,那么接下来的
进入了地图,大家欢迎!
如何与玩家名称拼接在一起呢?这个时候就需要用到字符串拼接
,在节点列表中搜索str2
,这代表两个字符串合并。我们先双击这条线,断开。
我们把
entity.player.name
的输出端与Str2
中的string1
连接起来,然后再string2
中输入进入了地图,大家欢迎!
,效果如下:然后,我们连接
世界广播
的message
,效果如下:
这个时候,代码编辑器会显示以下代码:
👏太棒了,目标已经达成了,快复制到岛3代码编辑器中运行试试吧~