Frage von LPlay, 20

Minecraft Multilanguage Plugin (Client Language)?

Wie kann ich es bei einem Minecraft Plugin so machen, dass die Nachrichten automatisch auf der Sprache vom Spieler sind?

Und ja, ich weiß, dass ich die Nachrichten dann auch auf den Sprachen schreiben muss.

Antwort
von JCK2000, 8

als erstes findest du das land über die website:http://ip-api.com/json/<die ip>
die adresse eines Players ist: player.getAddress().getAddress()
zurück
kommt ein string den du zu einem json-Objekt konvertieren musst. Von
diesem ist der Wert für den schlüssel "country" das Land aus dem die IP
kommt.
Danach kannst du dir mal Klassen java.util.Locale und
java.util.ResourceBundle ansehen. Die sind genau dafür da Programme
sprachunabhänig zu gestallten ;) viel spaß

das muss in eine Klasse die von org.Bukkit.Listener erbt rein dann hast du das Land:
@EventHandler
public void onJoinEvent(PlayerJoinEvent e){
    String playerIp = e.getPlayer().getAddress().getAddress().toString();
    try {
        URL url = new URL("ip-api.com/json/"+playerIp);
        JsonParser parser = new JsonParser();
        JsonObject data = parser.parse(new          InputStreamReader(url.openStream())).getAsJsonObject();
        String country = data.get("country").toString();
    } catch (IOException e1) {
        e1.printStackTrace();
    }
}

Kommentar von LPlay ,

Thx, versuche ich nachher mal. :)

Keine passende Antwort gefunden?

Fragen Sie die Community