MC~蛟龙
总所周知,MC原版是可以获取玩家一些键位绑定的是什么键的
见: 原始JSON文本格式

同样,[color=var(--color-a-link)]net.md_5.bungee.api.chat.KeybindComponent类可以帮助我们创建按键绑定的组件,
然后通过聊天的方式发送 (是否可以不发送,单单只获取绑定的键位信息)

Adventure API 中的 MiniMessage 也可以帮助创建键位组件

不过,除了第一种可以用指令在非聊天地方显示键位信息
BungeeAPI和AdventureAPI似乎都得用聊天的方式发送才能显示

举个例子:用这样的MiniMessage信息
  1. <key:key.jump>
复制代码
放到Invero菜单 (支持MiniMessage) 显示的是
  1. key.jump
复制代码


究其原因,
大概是这类(指按键绑定、已翻译文本)的消息,
需要一个玩家对象(因为读取是玩家客户端信息)
但是大部分(我就没见过)菜单插件对这类信息的解析不会提供玩家对象。

如:
  1. <blockquote>fun String.translateFormattedMessage(player: Player, variables: Map<String, Any?> = emptyMap()) =
复制代码
所以说,它根本解析不出来这种信息

我也尝试过PAPI扩展,但是我不会。

那么?
该怎么办呢?






无敌三脚猫
是否可以不发送
不可以
除非有客户端mod和插件通信,把那些信息发到服务端来

MC~蛟龙
无敌三脚猫 发表于 2023-7-23 15:31
不可以
除非有客户端mod和插件通信,把那些信息发到服务端来

请仔细看https://minecraft.fandom.com/zh/ ... E%E7%BB%91%E5%AE%9A
谢谢
原版可以的,服务端也一定有办法

下一页 最后一页