虚拟玩家数和最大玩家数

时间:2016-04-19 17:26:22

标签: java minecraft bukkit

我想让Player Count和max Players像虚拟一样,所以它不一定是正确的数字。我想为max Player Count设置一个虚拟号码我可以使用方法setMaxPlayers(int mxPlayers) from the ServerListPing Event。但是在线玩家怎么样?如果我试图通过插件中的查询来获取玩家,它是否也有效?

感谢您的帮助,抱歉我的英语不好;)

1 个答案:

答案 0 :(得分:1)

没有直接通过ServerListPingEvent设置玩家数量的方法。我不确定为什么他们选择以这种方式实现它。

来自doc:

  

可以通过迭代此事件来检查和删除显示的玩家。

假设,可以通过编辑该列表来更改那里的玩家(并且它将更新计数)。因此,如果您愿意,可以减少计数(但是,我不确定这是否有用,因为您只能减少数量)。

int wantedCount = 5;

Iterator<Player> itr = event.iterator();
while (event.getNumPlayers() > wantedCount) {
    itr.next();
    itr.remove();
}

但是,最好的选择是使用ProtocolLib并使用它编辑server list ping packet,而不是尝试使用该事件。

  

如果我尝试通过插件中的查询来获取玩家,它是否也有效?

我不完全确定你的意思,但如果你的意思是使用Bukkit.getPlayers(),那就不会使用ServerListPingEvent,因此对事件的更改不会影响它。