Craftplayer 1.16.1 Fehler?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Das geht in 1.16 so:

try {
 Object entityPlayer = player.getClass().getMethod("getHandle").invoke(player);
 int ping = (int) entityPlayer.getClass().getField("ping").get(entityPlayer);
} catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException | NoSuchMethodException | SecurityException | NoSuchFieldException e) {
 e.printStackTrace();
}

Quelle: https://www.spigotmc.org/threads/getting-a-players-ping.276272/

Woher ich das weiß:eigene Erfahrung – Minecraft-Experte. Aktiver Spieler seit 2011.

Ist das von einem Bukkit plugin?

Würde mal so vorschlagen, weiss aber nicht genau, weil meine Kentnisse recht verrostet sind...

public static int getPing(Player player) {
    EntityPlayer entityPlayer = ((CraftPlayer) player).getHandle();
    return entityPlayer.ping;
}
MrAmazing2  24.07.2020, 00:09

Wo ist da jetzt der Unterschied zu seinem Code???

Du hast das ganze in eine Funktion gepackt, aber inwiefern soll ihm das jz weiterhelfen, es ist genau das selbe...

0

Entsprechend des Source Codes vermute ich mal, dass es sich um die Klasse CraftOfflinePlayer handelt.

Falls nicht kannst du auch einfach player.getClass().getName() in die Konsole ausgeben und schauen, was es ist.