我目前正在制作Minecraft SkyWars-Plugin,并希望创建一个外观更好的标签表。
假设您有PlayerA和PlayerB。如果PlayerA出现在选项卡列表中,则其名称应为绿色,而PlayerB的名称应为红色。
但是如果PlayerB查看他的选项卡列表,PlayerB的名称应为绿色,而PlayerA的名称应为红色。
所以基本上,您自己的名字应该标记为绿色(颜色代码'a'),而对手应该使用红色名称(颜色代码'c')。
我该如何实现?我是否将包裹发送给每个玩家的标签列表?如果是这样,应该/可以使用哪些软件包?
提前感谢。
您的问题可以通过两种方式解决。
如果要在玩家列表中显示每位玩家的可见颜色仅,则可以使用Player Info
数据包(规范https://wiki.vg/Protocol#Player_Info)来修改玩家列表内容。完整的有效代码可能非常庞大,因此我为您提供了一种算法(下面我的意思是“数据包”是Player Info
数据包):
remove player
的数据包(有关动作列表,请参见wiki。remove player
和add player
,add player
,PlayerB。uuid和彩色的[[PlayerB's PlayerA的显示名称(在您的情况下为红色)显示给PlayerA。