1. Wenn du es in der Konfiguration speicherst (an sich möglich, die API bietet da mit
Configuration und seinen Unterklassen tolle Möglichkeiten), dann würde ich empfehlen es nicht in der Standarddatei
config.yml zu speichern sondern in einer anderen Datei (um dem Benutzer eine bessere Übersicht und Verwaltbarkeit zu gewährleisten). Und da bist du mit
true und
false ziemlich gut bedient, da das Schreiben und Auslesen von boolschen Werten ja von der API unterstützt wird. 1 und 0 würden hier nur unnötigen Aufwand und reduzierte Lesbarkeit bedeuten.
2. Ansonsten würde ich SQLite empfehlen, eine Programmbibliothek für relationale Datenbanken, die nur eine Datei für die gesamte Datenbank nutzt und für die es auch gute Java-Schnittstellen gibt. Ist ziemlich schmal, aber für Anfänger vielleicht weniger zu empfehlen als die Konfiguration zu benutzen.
Falls du dich für die erste Möglichkeit entscheidest, empfehle ich dir für jeden Nutzer einen Konfigurationspunkt mit seiner UUID anzulegen und dazu dann jeweils Unterpunkte mit den Werten (
true/false).
1c0da02d-27d2-46f1-93c4-ba5b1bef64a8:
Schuetze: true
Kaempfer: false
Kartoffel: true
5d7d1c32-749c-4791-9752-0d0fb102d55a:
Schuetze: false
Kaempfer: false
Kartoffel: true
Dann kannst du in deinem Plugin über die Methode
getBoolean leicht an die jeweiligen Werte kommen:
Player player = irgendsoeinSpieler;
FileConfiguration config = deineConfig;
if(config.getBoolean(player.getUniqueID().toString() + ".Kaempfer"))
{
System.out.println("Der Spieler ist ein Kämpfer!");
}
Eine zweite Möglichkeit wäre für jedes Kit eine Liste von Spielern zu speichern die es freigeschaltet haben, halte ich zwar für mehr Aufwand für einen Anfänger, ist aber auch machbar.
Schuetze: [1c0da02d-27d2-46f1-93c4-ba5b1bef64a8]
Kaempfer: []
Kartoffel: [1c0da02d-27d2-46f1-93c4-ba5b1bef64a8, 5d7d1c32-749c-4791-9752-0d0fb102d55a]
Dann würde sich eine Abfrage entsprechend ändern.
Player player = irgendsoeinSpieler;
FileConfiguration config = deineConfig;
List<String> liste = config.getList("Kaempfer");
if(liste.contains(player.getUniqueID().toString())
{
System.out.println("Der Spieler ist ein Kämpfer!");
}
Der Code ist frei aus dem Kopf geschrieben, ohne zu testen oder in die Docs zu gucken, ich übernehme keine Gewähr für irgendetwas
