Minecraft java Hashmap in Config laden/speichern?
Guten tag.
Ich code gerade an einem Minecraft Plugin. Ich bin gerade daran beschäftigt, eine location + inventory HashMap zu erstellen. also das meiste funktioniert schon.
leider werden alle Informationen wie Player location und inventar nach einem Restart
neu erstellt. Das heißt, dass das inventar/position, eines Spielers nach einem Restart Resetet wird.
Um es kurz zu fassen
wie kann ich eine HashMap speichern/laden?
2 Antworten
Ich würde dir in solchen Fällen empfehlen zuerst Java richtig zu lernen. Spigot Plugins zu entwickeln ist schon relativ anspruchsvoll und nicht wirklich für Anfänger geeignet.
Mir ist gerade aufgefallen, dass das nicht funktioniert da Location in Spigot Konfigurationen ein komplexer Typ ist und Inventories nicht unterstützt werden. So könnte man es zum Beispiel speichern (nicht unbedingt schön gelöst):
int index = 0;
ConfigurationSection inventoryLocations = config.createSection("inventoryLocations");
for (Map.Entry<Location, Inventory> entry : inventoryMap.entrySet()) {
ConfigurationSection section = inventoryLocations .createSection(index++);
section.set("location", entry.getKey());
section.set("inventory", Arrays.asList(entry.getValue()));
}
einfach gesagt mach ne konfig file. speicher da als key den spielernamen und dann das inventory
und dann beim restart lädst du die konfig als file
wenn der player joined überprüfe ob er in der file als name vorhanden ist bzw. hol dir das inventar passend zum namen und fang die nullPointer ab
Danke für die hilfe, aber irgendwie verstehe ich das nicht. ich bin noch anfänger im coden.