Update Scorebord every 1-5 Seconds

Discussion in 'Plugin Development' started by lelguy, Jul 5, 2015.

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

    lelguy

    Hey,
    I am trying to make it so that my scoreboard updates every 1-5 seconds

    But I honistly dont know how to do it
    Anyway heres my code: (The scorebord works perfectly fine, it just doesn´t update since every login)

    Code:
      @EventHandler
      public void onJoin(PlayerJoinEvent e) {
          Player p = e.getPlayer();
          ScoreboardManager sm = Bukkit.getServer().getScoreboardManager();
          Scoreboard board = sm.getNewScoreboard();
          if (claned(e.getPlayer())) {
             
         
          Objective score = board.registerNewObjective("aaa", "bbb");
          score.setDisplayName("§6§lSoupPvP Map 1");
          score.setDisplaySlot(DisplaySlot.SIDEBAR);
      
          score.getScore("§e> §fTeam:").setScore(7);     
          score.getScore("§f" + getClanTag(p.getPlayer())).setScore(6);   
          score.getScore("§a").setScore(5); 
          score.getScore("§e> §fBorder:").setScore(4);
          score.getScore("§f9k").setScore(3); 
      
          p.setScoreboard(board);
          } else {
              Objective score = board.registerNewObjective("aaa", "bbb");
              score.setDisplayName("§6§lSoupPvP Map 1");
              score.setDisplaySlot(DisplaySlot.SIDEBAR);
          
              score.getScore("§e> §fTeam:").setScore(7);     
              score.getScore("§fNo Team").setScore(6); 
              score.getScore("§a").setScore(5); 
              score.getScore("§e> §fBorder:").setScore(4);
              score.getScore("§f9k").setScore(3); 
              p.setScoreboard(board);
             
          }
      
      }
    
    Would be awesome if anyone could help me :)
     
  2. Take a look at BukkitRunnable and BukkitScheduler:
    http://wiki.bukkit.org/Scheduler_Programming

    BukkitRunnable is newer but both are good.
    I think you will figure out the usage, otherwise ask.

    You could schedule a task in the onEnable() that updates the scoreboard for everyone or schedule a task for each player when they join, the latter could be a good idea if you want to distribute cpu or network load, but the first one should work just fine.
     
Thread Status:
Not open for further replies.

Share This Page