Advertisement
Guest User

Untitled

a guest
Oct 26th, 2016
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.73 KB | None | 0 0
  1. package com.devonnuri.Util;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.HashMap;
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.entity.Player;
  7. import org.bukkit.scoreboard.DisplaySlot;
  8. import org.bukkit.scoreboard.Objective;
  9. import org.bukkit.scoreboard.Score;
  10. import org.bukkit.scoreboard.Scoreboard;
  11.  
  12.  
  13. public class Sidebar {
  14.     String display;
  15.     String name;
  16.    
  17.     Scoreboard scoreboard = Bukkit.getScoreboardManager().getNewScoreboard();
  18.    
  19.     HashMap<Player, Objective> objectives = new HashMap<Player, Objective>();
  20.     ArrayList<String> scores = new ArrayList<String>();
  21.    
  22.     public Sidebar(String name, String display){
  23.         this.display = display;
  24.         this.name = name;
  25.     }
  26.    
  27.     public void setScore(String... name){
  28.         for(String temp : name){
  29.             scores.add(temp);
  30.         }
  31.     }
  32.    
  33.     @SuppressWarnings("deprecation")
  34.     public void init(Player player){
  35.         Objective obj = scoreboard.registerNewObjective(name, "dummy");
  36.         obj.setDisplayName(display);
  37.         obj.setDisplaySlot(DisplaySlot.SIDEBAR);
  38.        
  39.         int i=scores.size()-1;
  40.         for(String name : scores){
  41.             Score score = obj.getScore(Bukkit.getOfflinePlayer(name));
  42.             score.setScore(i);
  43.             i--;
  44.         }
  45.        
  46.         player.setScoreboard(scoreboard);
  47.         objectives.put(player, obj);
  48.     }
  49.  
  50.     @SuppressWarnings("deprecation")
  51.     public void reinit(Player player){
  52.         Objective obj = objectives.get(player);
  53.        
  54.         int i=scores.size()-1;
  55.         for(String name : scores){
  56.             Score score = obj.getScore(Bukkit.getOfflinePlayer(name));
  57.             score.setScore(i);
  58.             i--;
  59.         }
  60.        
  61.         player.setScoreboard(scoreboard);
  62.         objectives.put(player, obj);
  63.     }
  64.  
  65.    
  66.     public void destroy(){
  67.         scores.clear();
  68.         for(Objective obj : objectives.values().toArray(new Objective[objectives.values().size()])){
  69.             obj.unregister();
  70.         }
  71.     }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement