1. 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!

[Problem] Listen

Dieses Thema im Forum "Programmierung" wurde erstellt von ScaryHutman, 5. Februar 2013.


  1. ScaryHutman
    Offline

    ScaryHutman

    Registriert seit:
    1. Januar 2013
    Beiträge:
    205
    Geschlecht:
    männlich
    Minecraft:
    Scary_Hutman
    Ich habe wieder ein Problem. :p
    Ich arbeite gerade an einem PlugIn und brauche dazu eine config.yml und eine saves.yml. Ich habe es schon geschafft beide Dateien zu erstellen, "Daten" rein zu schreiben und diese auch wieder zu verwenden. Nun brauche ich jedoch eine Liste, in die Spieler eingetragen werden, wenn sie ein Command senden. Ich habe schon versucht eine solche Liste zu erstellen, jedoch ohne Erfolg. :(
    Wenn ein Spieler /join eingibt und der erste in der Liste ist, dann wird er falsch in die saves.yml eingetragen

    Code (Text):
    1. players:
    2.     joined:
    3.     - - <name>

    Bei allen weiteren Spielern funktioniert das aber so wie es sein soll!

    saves.yml:
    Code (Text):
    1. File savesPath = new File("plugins/******/saves.yml");
    2.         FileConfiguration saves = YamlConfiguration
    3.                 .loadConfiguration(savesPath);
    4.         saves.options().copyDefaults(true);
    Einfügen in die Liste + speichern

    Code (Text):
    1. if (!saves.contains("players.joined")) {
    2.                         sender.sendMessage(ChatColor.RED + "Error! List '"
    3.                                 + args[1] + "' doesn't exist!");
    4.                         return;
    5.                     }
    6.                     if (!saves.contains("players.joined")) {
    7.                         String[] plist = { sender.getName() };
    8.                         saves.set("players.joined",
    9.                                 Arrays.asList(plist));
    10.                     } else {
    11.                         List<String> list = saves.getStringList("players.joined");
    12.                         list.add(sender.getName());
    13.                         saves.set("players.joined",
    14.                                 Arrays.asList(list));
    15.                     }
    16.                     try {
    17.                         saves.save(savesPath);
    18.                     } catch (IOException e) {
    19.                         e.printStackTrace();
    20.                     }
     
  2. Werbung
    Online

    Werbung

  3. Funzocker1
    Offline

    Funzocker1

    Registriert seit:
    21. Oktober 2012
    Beiträge:
    127
    ..

    Sorry wenn ich dir jetzt was sage was dir nix bringt doch du hast wenig info angegeben für was du es benötigst wenn es um den reinen eintrag geht um z.B zu wissen wer gerade drinnen ist würde ich sowieso eine hashmap bzw linkedlist empfehlen. Wenn du es in die config oder save.yml brauchst würde ich einfach den dateipfad angeben und alles mit trennzeichen aneinander geben beim herauslesen splitest du es und fertig. Hoffe ich konnte helfen lg