2017-04-15 55 views
-2

我试过做一个插件,它可以告诉原始& Warez我的世界玩家之间的区别。我已经尝试了很多apis,但它根本不起作用。插件,检查是否玩家是原创的 - 我的世界

这里是我的代码 - https://www.hastebin.com/oyicejaron.java

感谢您的帮助。

+0

发布之前,请先阅读[帮助/切合主题。 – Kayaman

+1

将您的服务器设置为'online-mode = true'。然后只是'返回true;'。其他任何事情都会鼓励不良行为,违反若干合同,而且通常不推荐。 – Pokechu22

回答

1

如果你想知道如何请检查是否某个选手的名字是一种优质的Minecraft帐户的名字,我会做到以下几点:

您必须连接到Mojang提供API,并请求演变玩家的名字。当没有找到该名称的玩家时,mojang API不会返回任何内容。 的网址如下:

URL url = new URL("https://api.mojang.com/users/profiles/minecraft/" + username); 

其中username是玩家的用户名。 (在你的情况p.getName()) 此外请确保围绕此语句与try-和catch块来处理可能的MalformedURLException

现在我们要检查这个页面返回的内容是否为空。您可以使用BufferedReader读出内容。你可以是这样做的:

BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream())); 

URL.openStream()抛出IOException。这最好用try catch块捕捉IOException来包围整个块,因为MalformedURLException延伸了IOException

我们请检查是否该阅读器是空的或没有,确实没有这样做的方法,但我是这样做的

boolean empty = reader.lines().count() == 0; 

这个布尔是true当阅读器空,这是当它不是时,false

最后,关闭这个阅读器是很重要的,你可以通过键入reader.close();