ServerPlugin Integer sortieren für einen Highscore?

Dieses Thema im Forum "Programmierung" wurde erstellt von Masterfran99, 27. Mai 2014.

  1. Masterfran99
    Offline

    Masterfran99 Gesperrt

    Registriert seit:
    13. Oktober 2012
    Beiträge:
    100
    Hallo,

    mein Problem ist diesmal ich hab es zwar geschafft Integer aus einer Config zu sortieren also z.B. so:

    999
    88
    77
    50
    34
    22
    10
    8
    5
    2

    Das sind so gesagt die höhsten 10 Werte aber es soll ja so aussehen:

    Platz | Name | Punkte

    1. Name1: 999
    2. Name2: 88
    3. Name3: 77
    4. Name4: 50
    ...

    Das Problem liegt hier ich bekomme den passenden Namen zum richtigen Wert nicht bei mir sieht das dann so aus:

    [Name1, Name2, Name3, Name4]: 999
    [Name1, Name2, Name3, Name4]: 88
    [Name1, Name2, Name3, Name4]: 77
    [Name1, Name2, Name3, Name4]: 50

    Desweiteren ist das Problem wie kann ich für jedes weitere p.sendMessage(""); davor die Platzierung stehen soll.

    Die Config sieht so aus:

    Code (Text):
    1. Name1: 999
    2. Name2: 88
    3. Name3: 77
    4. Name4: 50
    Mein Code sieht so aus:
    Code (Text):
    1.     public static void highscore(Player p){
    2.         File score = new File("plugins//ArenaManager//GunGame//Highscore.yml");
    3.         if(score.exists()){
    4.         FileConfiguration cfgs = YamlConfiguration.loadConfiguration(score);
    5.             p.sendMessage("§3[Sportspiele]: §9Die besten Sportspiele-Spieler:");
    6.             List<Integer> InputKills = new ArrayList<>();
    7.             for(String namen : cfgs.getKeys(false)){
    8.             InputKills.add(cfgs.getInt(namen));
    9.             }
    10.             List<Integer> sortKills = new ArrayList<Integer>(InputKills);
    11.             for(int i = 0; i >= 9; i++){
    12.               Integer Killsint = sortKills.get(i);
    13.               String Kills = Killsint.toString();
    14.               Set<String> pname = cfgs.getKeys(false);
    15.               p.sendMessage("§3[Sportspiele]: §9" + pname + ": §a" + Kills);              
    16.             }
    17.         }
    18.     }
    Ich komm einfach nicht drauf ich hab gegooglt und meine Freunde um Hilfe gefragt die mehr Ahnung haben.

    Hoffe mir kann jemand helfen. ;(
     
    #1
  2. h3inz3l
    Offline

    h3inz3l

    Registriert seit:
    12. April 2013
    Beiträge:
    131
    Ort:
    Hinter der nächsten Ecke
    Minecraft:
    h3inz3l
    Versuch es mal in einer HashMap

    Einfach goggeln was damit möglich ist :D
     
    #2