ServerPlugin Drei ersten Einträge in einem Scoreboard auslesen

Dieses Thema im Forum "Programmierung" wurde erstellt von McWizzardDev, 1. März 2016.

  1. McWizzardDev
    Offline

    McWizzardDev

    Registriert seit:
    7. Oktober 2015
    Beiträge:
    58
    Guten Tag,

    ich hatte gestern gefragt, wie ich die drei Spieler mit den niedrigsten y Koordinaten herausfinde, nun habe ich mich dazu entschlossen, dies mit einem Scoreboard zu machen, da ich das für mein JumpDown sowieso brauche :D

    Code (Text):
    1.     static ScoreboardManager sm = Bukkit.getScoreboardManager();
    2.     static Scoreboard board = sm.getNewScoreboard();
    3.     static Objective score = board.registerNewObjective("aaa", "bbb");
    4.  
    5.     public static void sendScoreboard(Player p) {
    6.        
    7.         score.setDisplayName("§2§lJumpDown");
    8.         score.setDisplaySlot(DisplaySlot.SIDEBAR);
    9.        
    10.         for(Player players : Bukkit.getOnlinePlayers()) {
    11.             Integer hight = (int) players.getLocation().getY();
    12.             if(players == p) {
    13.                 score.getScore("§9" + players.getName()).setScore(hight);
    14.             } else {
    15.             score.getScore("§7" + players.getName()).setScore(hight);
    16.             }
    17.         }
    18.         p.setScoreboard(board);
    19.        
    20.        
    21.     }
    Ich gehe alle Spieler durch und trage deren Höhe ein, wie kann ich nun die ersten drei höhen herausbekommen, da ein Scoreboard sich ja sortiert, z.B

    GermanDev 131
    Peter 111
    xMint 91
    fischi 13

    Jetzt möchte ich das die 3 Spieler mit den niedrigsten y koordinaten herausgefunden werden, also in diesem Fall

    Peter, xMint und fischi


    Danke schon im Voraus

    (Bitte schickt mir keine Links zu einer Webseite, die Scoreboards erklärt!)
     
    #1
  2. Verschraubt
    Online

    Verschraubt

    Ich würde mit einer HashMap arbeiten.
    Die höhe wird dem Spieler in der HashMap gesetzt und bei Bedarf können dort auch die drei niedrigsten Höhen herausgelesen werden.
     
    #2
    UnityGaming und jensIO gefällt das.
  3. UnityGaming
    Offline

    UnityGaming

    Registriert seit:
    25. Oktober 2015
    Beiträge:
    89
    Ort:
    Hohenfels
    Minecraft:
    FastFelix771
    @Verschraubt TreeMap würde sich dafür anbieten, die müsste das sortieren übernehmen, dann muss man da nicht noch extra basteln.
     
    #3
    jensIO und Verschraubt gefällt das.