Scoreboard Problems

Discussion in 'Plugin Development' started by BetaNyan, Sep 5, 2014.

Thread Status:
Not open for further replies.
  1. Offline

    BetaNyan

    I have never found a use to using Scoreboards until now. I am trying to create a Top 5 Kills scoreboard.

    Here's my code:

    Code:
        public ScoreboardManager m = Bukkit.getServer().getScoreboardManager();   
        public Scoreboard board = m.getNewScoreboard();
        public Objective o = board.registerNewObjective("topkills", "dummy");
       
       
        @EventHandler
        public void onJoin(PlayerJoinEvent e) {
            o.setDisplayName(ChatColor.GREEN + "Top 5 Kills");
            o.setDisplaySlot(DisplaySlot.SIDEBAR);
            e.getPlayer().setScoreboard(board);
        }
       
        @EventHandler
        public void onKill(PlayerDeathEvent e) {
            if(e.getEntity().getKiller() instanceof Player && e.getEntity() instanceof Player) {
                Score s = o.getScore(e.getEntity().getKiller());
                s.setScore(s.getScore() + 1);
            }
        }

    Events are registered, Class implements Listener, but no Scoreboard shows up at all.

    Any reasons why?
     
  2. Offline

    CrazymanJR

    Score s = o.getScore(e.getEntity().getKiller());
    Change To:
    Score s = o.getScore(Bukkit.getOfflinePlayer(e.getEntity().getKiller()); - Didn't test this
     
  3. Offline

    BetaNyan

    Didn't work :( I want it to show right when you join, anyways.
     
  4. baaaaaaaad!!11! cache them in a list and run a comparator to sort them. then display them on the scoreboard
     
  5. Offline

    BetaNyan

  6. Offline

    Zombieghost_391

    Try this I didn't test it dow :\

    Code:java
    1.  
    2. @Override
    3. public void onEnable(){
    4. makeScoreboared();
    5. PluginManager pm = Bukkit.getServer().getPluginManager();
    6. pm.registerEvents(this, this);
    7. }
    8.  
    9. private static ScoreboardManager m = Bukkit.getServer().getScoreboardManager();
    10. private static Scoreboard sb = m.getNewScoreboard();
    11. private static Objective o = sb.registerNewObjective("topKills", "dummy");
    12.  
    13. public static void makeScoreboared(){
    14. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    15. o.setDisplayName("§aTop 5 Kills");
    16.  
    17. Score score = o.getScore("No Killer");
    18. score.setScore(0);
    19.  
    20. }
    21.  
    22. public void onJoinEvent(PlayerJoinEvent e){
    23. Player p = e.getPlayer();
    24. p.setScoreboard(sb);
    25. }
    26.  
    27. public void onDeathEvent(PlayerDeathEvent e){
    28. Player p = e.getEntity();
    29. Player k = e.getEntity().getKiller();
    30.  
    31. Score score = o.getScore(k);
    32. score.setScore(0);
    33.  
    34. }
     
Thread Status:
Not open for further replies.

Share This Page