开启辅助访问      

站内搜索

搜索
热搜: 下载 1.19 1.20

Minecraft(我的世界)苦力怕论坛

[BE教程] 从0开发Script Api[一]

头像被屏蔽
发表于 2023-2-23 20:43:11 来自手机 | 显示全部楼层 |阅读模式 IP:安徽省
本帖最后由 凡落鸢潇 于 2023-2-23 20:49 编辑

来讲一些有关于BeforeChatEvent的东西
订阅大家应该都会
world.events.beforeChat.subscribe() Screenshot_20230223-195811.jpg
接下来就要用他来干一些事情了
Chat,会在玩家在聊天框进行交流时触发,运行()的js代码。
message ---- 玩家说的话,字符串类型
如果想让脚本在聊天框重复一遍你说的话
可以用world.sendMessage()输出文本,里面填写字符串,代码如下
Screenshot_20230223-200753.jpg
这样,聊天框就会复述一遍你说的话
这是可以赋值的,message = 'String',可以修改改玩家说的话
cancel ---- 一个布尔值,设置为true则禁止此次发言
如果你不想让任何一个人说话,可以这样做
Screenshot_20230223-201126.jpg
如果是有选择性的进行屏蔽一些发言,则需要使用if或者其他功能类似的语句
sender ---- 信息发送者,指向向聊天框发送消息的玩家
代码举例
Screenshot_20230223-201536.jpg
注意,sender是一个玩家,sender.name是该玩家的名字,仅表示字面含义[字符串]
以后可不要对别人说sender.name能获取玩家。
getTargets() ----  接受到消息的所有玩家,是一个数组,可以用for of 来遍历,也可以targets[Number]来获取第Number个玩家
举例
Screenshot_20230223-202537.jpg
setTargets() ---- 文档到目前来说都没有更新,不过猜测是用来设置接受消息的玩家列表的,亦或者说是,聊天白名单
setTargets([])要填的依然是个数组,数组里面填玩家[这个玩家类型要通过一些其他的方法获取,并不能通过字面量构建]
我接下来综合上面的东西自己写个实例,你们可以参考一下[由于文档原因以及个人原因,可能会有错误]
Screenshot_20230223-204245.jpg
本帖就到这里了
(手机)从0开发Script Api[准备工作]
https://klpbbs.com/thread-91722-1-1.html
从0开发Script Api[一]
https://klpbbs.com/thread-91754-1-1.html

评分

参与人数 1铁粒 +100 收起 理由
指令凋灵 + 100 感谢分享

查看全部评分

苦力怕论坛,感谢有您~
回复

使用道具 举报

发表于 2023-2-23 22:23:49 来自手机 | 显示全部楼层 IP:江西省
键盘不错
2# 2023-2-23 22:23:49 回复 收起回复
苦力怕论坛,感谢有您~
回复 支持

使用道具 举报

发表于 2023-3-6 12:09:20 来自手机 | 显示全部楼层 IP:广东省
这是什么编辑器啊?
3# 2023-3-6 12:09:20 回复 收起回复
苦力怕论坛,感谢有您~
回复 支持

使用道具 举报

发表于 2023-8-25 06:24:27 来自手机 | 显示全部楼层 IP:意大利
为什么我这自动补全跟没有一样
4# 2023-8-25 06:24:27 回复 收起回复
苦力怕论坛,感谢有您~
回复 支持

使用道具 举报

发表于 2023-8-29 20:53:48 来自手机 | 显示全部楼层 IP:辽宁省
im2695 发表于 2023-3-6 12:09
这是什么编辑器啊?

编辑器是Acode
5# 2023-8-29 20:53:48 回复 收起回复
苦力怕论坛,感谢有您~
回复 支持

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

本站
关于我们
联系我们
坛史纲要
官方
哔哩哔哩
技术博客
下载
网易版
安卓版
JAVA
反馈
意见建议
教程中心
更多
捐助本站
QQ群
QQ群

QQ群

访问手机版

访问手机版

手机版|小黑屋|系统状态|klpbbs.com

粤公网安备 44200002445329号 | 由 木韩网络 提供云服务 | GMT+8, 2024-5-4 03:27

声明:本站与Mojang以及微软公司没有从属关系

Powered by Discuz! X3.4 粤ICP备2023071842号