• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

PlugIn Config - Werte ausgeben

Tigerentchen

Minecrafter
Registriert
1 Juli 2021
Beiträge
3
Diamanten
250
Hallo, ich habe da eine kleine Frage bezüglich eines Plugins, welches ich zur Zeit programmiere.
Das Plugin ist ein Warp-Plugin und ist somit im Aufbau recht simpel. Man kann Warps erstellen und sich zu diesen hin teleportieren.
Jedoch:
Ich wollte einen Befehl schreiben, welcher die Vorhandenen Punkte auflistet.
Dies sollte dann so aussehen:
Spieler1 schreib: /warps
p.sendMessage():
p.sendMessage(config.get...) // Ausgabe: Spawn, Warp1 etc

Da ich zum ersten Mal mit einer Config arbeite, wollte ich wissen, welche Methode/n ich benutzen kann, um mir die einzelnen Punkte ausgeben zu lassen.
Um die Werte zu speichern benutze ich Folgendes:
Block speichern:
name = args[0];
FileConfiguration config = Main.getPlugin().getConfig();
config.set(name+".World", p.getWorld().getName());
config.set(name+".X", p.getLocation().getX());
config.set(name+".Y", p.getLocation().getY());
config.set(name+".Z", p.getLocation().getZ());
config.set(name+".Yaw", p.getLocation().getYaw());
config.set(name+".Pitch", p.getLocation().getPitch());
Main.getPlugin().saveConfig();

Somit speichert er die Werte unter dem gegebenen Namen.
Bsp.
Screenshot_2.jpg


Die Klasse (die ich versuche zu schreiben) soll somit per Command die Namen der Teleportpunkte auflisten. Natürlich könnte ich einen Unterpunkt "Name" erstellen und diesem den Wert name (siehe oben) zuweisen, ich denke jedoch, dass es eine elegantere Lösung gibt.

Ich danke im Voraus :)
 
Zuletzt bearbeitet:
Lösung
Guten Abend @Tigerentchen,

Die Methode getKeys() gibt dir ein String Set zurück welches dann die Namen deiner Warppunkte enthält.
Anschließend kannst du mit einer For-Schleife durch das Set durchgehen und zum Beispiel mit dem StringBuilder diese hintereinander auflisten. Danach nur noch das ganze an den Spieler senden und fertig.

Liebe Grüße,
Trinity :)

TrinityX

Redstoneengineer
Registriert
17 Mai 2020
Beiträge
47
Alter
23
Diamanten
337
Minecraft
NichtTrinity
Guten Abend @Tigerentchen,

Die Methode getKeys() gibt dir ein String Set zurück welches dann die Namen deiner Warppunkte enthält.
Anschließend kannst du mit einer For-Schleife durch das Set durchgehen und zum Beispiel mit dem StringBuilder diese hintereinander auflisten. Danach nur noch das ganze an den Spieler senden und fertig.

Liebe Grüße,
Trinity :)
 
Oben