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!

PlugIn Etwas passiert nicht richtig (Config)

Dieses Thema im Forum "Programmierung" wurde erstellt von MineForce, 28. Mai 2014.


  1. MineForce
    Offline

    MineForce Gesperrt

    Registriert seit:
    17. Oktober 2012
    Beiträge:
    122
    Hallo Leute,

    mir ist grad ein Problem passiert und ich weiß echt nicht wie das möglich ist.
    Mit diesen Code setze ich einen Boolean von false auf true:
    Code (Text):
    1.         if(!cfga.isBoolean("Arenas.")){
    2.                 ArrayList<String> arenes = new ArrayList<>();
    3.                 arenes.addAll(cfga.getConfigurationSection("Arenas").getKeys(false));
    4.                 String ra = arenes.get((int) (Math.random() * arenes.size()));
    5.                 cfga.set("Arenas." + ra, true);
    6.                 try{
    7.                     cfga.save(arenaa);
    8.                     join(p);
    9.                 }catch (IOException e){
    10.                     e.printStackTrace();
    11.                 }
    12.             }
    Meine Join-Methode schaut dann noch nach ob 1 Boolean auf true ist und dann wird diese Arena genommen.
    Jedoch werden durch meine Methode oben immer alle Booleans meiner Config auf true gesetzt aber warum?

    Normalerweise sollte 1 zufälliger Boolean auf true gesetzt werden.

    Ich weiß echt nicht wieso immer alle auf true gesetzt werden.
    Kann mir einer sagen woran das liegt?

    Danke
    mfg MineForce
     
  2. games6471
    Offline

    games6471

    Hast du beacht, dass du in deiner IF-Abfrage nicht den Wert überprüfst, sondern ob dort kein Boolean existiert.

    Checks if the specified path is a boolean.
    If the path exists but is not a boolean, this will return false. If the path does not exist, this will return false. If the path does not exist but a default value has been specified, this will check if that default value is a boolean and return appropriately.


    EDIT: Desweiteren werden in YAML die Nodes mit Punkte getrennt.
    Code (Text):
    1. cfga.isBoolean("Arenas.")
    sowas wird also jederzeit false zurückgeben.
     
    Zuletzt von einem Moderator bearbeitet: 28. Mai 2014
  3. MineForce
    Offline

    MineForce Gesperrt

    Registriert seit:
    17. Oktober 2012
    Beiträge:
    122
    Ja, ich habe grad das Problem gefunden.
    Ich weiß nur nicht mit welcher Methode man jetzt überprüft ob 'Alle' Werte auf false sind weil dann wäre mein Problem geklärt. :D
    Vielen Dank