Advertisement
MathWeIIan

Board.java

Nov 9th, 2018
37
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.28 KB | None | 0 0
  1. public class Board implements Listener
  2. {  
  3.     private int countdown;
  4.     private Scoreboard board;
  5.    
  6.     public Board()
  7.     {
  8.         board = Bukkit.getScoreboardManager().getNewScoreboard();
  9.        
  10.         countdown = 600;
  11.     }
  12.    
  13.     public Scoreboard getBoard()
  14.     {
  15.         return board;
  16.     }
  17.    
  18.     public int getCountdown()
  19.     {
  20.         return countdown;
  21.     }
  22.    
  23.     public void changeCountdown(int newCountdown)
  24.     {
  25.         this.countdown = newCountdown;
  26.     }
  27.    
  28.     public void decrementCountdown()
  29.     {
  30.         this.countdown--;
  31.     }
  32.    
  33.     public void updateScoreboard()
  34.     {  
  35.         for(Player online : Bukkit.getOnlinePlayers())
  36.         {
  37.             ScoreboardSign sign = ScoreboardManager.get(online);       
  38.            
  39.             switch(GameStates.getState())
  40.             {
  41.                 default:
  42.                     break;
  43.                    
  44.                 case PVP:
  45.                    
  46.                     sign.setLine(3, "PvP » §6" + format(countdown));
  47.                    
  48.                     break;
  49.                
  50.                 case ASSAUT:
  51.                    
  52.                     sign.setLine(3, "» §6" + format(countdown));
  53.  
  54.                     break;
  55.                
  56.             }
  57.         }
  58.     }
  59.    
  60.     @EventHandler
  61.     public void onJoin(PlayerJoinEvent e)
  62.     {
  63.         Player p = e.getPlayer();
  64.         ScoreboardSign sign;
  65.        
  66.         p.setScoreboard(board);
  67.         sign = ScoreboardManager.create(p);
  68.        
  69.         if(!GameStates.isState(GameStates.WAIT))
  70.         {
  71.             sign.setLine(1, ChatColor.DARK_GRAY + ChatColor.STRIKETHROUGH.toString() + "+------------------" + ChatColor.DARK_GRAY + "+");
  72.             sign.setLine(2, "§1");
  73.         }
  74.         if(GameStates.isState(GameStates.INGAME))
  75.             sign.removeLine(3);
  76.     }
  77.    
  78.     private String format(long input)
  79.     {
  80.         String output = "";
  81.         long  minutes = 0, seconds = 0;
  82.      
  83.         while(input >= 60)
  84.         {
  85.                 minutes++;
  86.                 input -=  60;
  87.         }
  88.        
  89.         seconds = input;
  90.        
  91.         if(minutes > 0)
  92.         {
  93.                 if(minutes < 10)
  94.                         output += "0"+ minutes +":";
  95.                 else
  96.                         output += minutes + ":";
  97.         } else
  98.                 output += "00:";
  99.        
  100.         if(seconds > 0)
  101.         {
  102.                 if(seconds < 10)
  103.                         output += "0"+ seconds;
  104.                  else
  105.                         output += seconds;
  106.         } else
  107.                 output += "00";
  108.        
  109.         return output.trim();
  110.     }
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement