Discord

  • 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!

Erledigt PlugIn Minecraft Config erstellen

Steiniiii

Minecrafter
Mitglied seit
4 Januar 2018
Beiträge
20
Guten Abend miteinander, :)

ich versuche mir und bisher mit Erfolg (so hoffe ich doch) die Minecraft Plugin Programmierung beizubringen. Die Grundlgen von Java sind mir geläufig.;)

Nun zu meiner Frage: Ich möchte ein Minecraft Plugin erstellen, welches die Joinnachrichten eines Spielers ändert. Ich weis bereits wie ich das "feste im Plugin" ändere, aber ich möchte, dass das über eine Config mit Farbcodes änderbar ist.o_O

Ich habe mir bereits mehrere Videos angeschaut welche das Thema angeblich behandeln, bin aber nicht wirklich schlau daraus geworden, da deren Schreibstil aus meiner Sicht arg chaotisch aussieht. :rolleyes: Wie Configs erstellt werden und dort Daten durch das Plugin eingetragen werden ist mir bekannt, aber nicht wie ich etwas in die Config eintrage und das Plugin diese ausliest.

Gerne können mir Links geschickt werden, zu Videos, Beiträgen u.ä. :D

Danke schon jetzt für alle konstruktiven Antworten.;)

Gruß Steini
 

DerFrZocker

Miner
Osterei Experte
Mitglied seit
10 Dezember 2017
Beiträge
159
Alter
19
Minecraft
DerFrZocker
Eine einfache Config zu erstellen ist relativ einfach.

Erstelle einfach dort wo deine "Plugin.yml" liegt, noch eine zusätzlich File namens "config.yml".

Dort schreibst du einfach deine Werte rein wo du haben willst. z.b.

Code:
 message: 'Das ist eine Nachricht!'
Dabei ist zu beachten das du nur Leerzeichen verwendest und keine Taps.

Wenn du dann auf die Nachricht zu greifen, willst machst du einfach.
Code:
MeinPlugin.getInstance().getConfig().getString("message"); // Natürlich musst du noch die Methode "getInstace()" in deiner Main erstellen
Für umfangreichere Angelegenheiten wie z.b. mehrere Configs / Message file oder UTF-8 Codierung, musst du dich dann doch etwas genauer mit Yml aus einander setzen.

Da haben andere im Forum aber bestimmt noch was zum lesen für dich.
 

FraxDzn

Minecrafter
Mitglied seit
21 Juli 2018
Beiträge
21
Hallo,

kannst es auch einfach so hier entwickeln:

Finde ich persönlich bisschen schöner und Objektorientierter.

Dort ist es einfach so, dass du die File ganz normal über Java erstellst mit File f = new File();
Dann muss mann eben noch eine FileConfiguration erschaffen, um in der Config werte zu speichern, verändern oder lesen zu können.
geht ganz einfach über FileConfiguarion cfg = YamlConfiguartion.loadConfiguartion(f);.

Dann kannst du eben noch eine Methode erschaffen, mit der du eben die Werte in einer Config setzen kannst.
Dabei solltest du nicht vergessen copyDefaults auf true zu setzen.
Falls du es gemacht hast, kannst du mit dem Befehl cfg.addDefaults(String path, Object value) es auch in der Config speichern.
Diese Methode könnte man ja eventuell createDefaults oder so nennen, ist ja immerhin dem Entwickler selbst überlassen.

Um die Werte aus deinem Projekt, mit den Werten aus deiner Config zu setzen musst du nur cfg.getString(String path); als beispiel machen.
Jedoch wenn du in der Config farbige Texte mit dem Zeichen & zu wollen, solltest du umbedingt beim lesen des Strings darauf aufpassen, dass dieser wieder "übersetzt" wird.
ChatColor.translateAlternateColorCodes('&', cfg.getString("prefix")) so würde es in etwa aussehen.

Um die Werte zu setzen, könntest du einfach statische variablen erschaffen oder dir irgendwas anderes überlegen, ist ja immerhin dir selbst überlassen.

Hier ist der Code, um es dir ein bisschen besser zu verdeutlichen, wie diese Prozedur ablaufen soll:

https://hasteb.in/zikequgi.gradle

Falls du noch irgendwelche Fragen hast stelle die ruhig^^.

Mfg.
FraxDzn aka. Daniel
 
Oben