Guest User

Untitled

a guest
Feb 17th, 2018
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.04 KB | None | 0 0
  1. package de.xGamerTim.Sidebar;
  2.  
  3. import java.lang.reflect.Field;
  4. import java.text.DateFormat;
  5. import java.text.SimpleDateFormat;
  6. import java.util.Calendar;
  7. import java.util.Date;
  8. import java.util.HashMap;
  9.  
  10. import org.bukkit.Bukkit;
  11. import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer;
  12. import org.bukkit.entity.Player;
  13. import org.bukkit.event.EventHandler;
  14. import org.bukkit.event.Listener;
  15. import org.bukkit.event.player.PlayerJoinEvent;
  16. import org.bukkit.event.player.PlayerQuitEvent;
  17. import org.bukkit.scoreboard.DisplaySlot;
  18. import org.bukkit.scoreboard.Objective;
  19. import org.bukkit.scoreboard.Scoreboard;
  20. import org.bukkit.scoreboard.Team;
  21.  
  22. import net.md_5.bungee.api.ChatColor;
  23. import net.minecraft.server.v1_8_R3.IChatBaseComponent;
  24. import net.minecraft.server.v1_8_R3.PacketPlayOutPlayerListHeaderFooter;
  25. import net.minecraft.server.v1_8_R3.IChatBaseComponent.ChatSerializer;
  26. import ru.tehkode.permissions.bukkit.PermissionsEx;
  27.  
  28. public class setBoard implements Listener
  29. {
  30. public static HashMap<Scoreboard, Player> boards = new HashMap<>();
  31.  
  32. @SuppressWarnings("deprecation")
  33. public static void setScoreboard (Player p)
  34. {
  35. Date today1 = Calendar.getInstance().getTime();
  36. DateFormat tm = new SimpleDateFormat("HH:mm");
  37. String time = tm.format(today1);
  38.  
  39. Scoreboard board = Bukkit.getScoreboardManager().getNewScoreboard();
  40. Objective obj = board.registerNewObjective("aaa","bbb");
  41. obj.setDisplaySlot(DisplaySlot.SIDEBAR);
  42. obj.setDisplayName("§a§lScoreboard");
  43.  
  44. Team team1 = board.registerNewTeam("Team1");
  45. Team team2 = board.registerNewTeam("Team2");
  46. Team team3 = board.registerNewTeam("Team3");
  47. Team team4 = board.registerNewTeam("Team4");
  48. Team team5 = board.registerNewTeam("Team5");
  49. Team team6 = board.registerNewTeam("Team6");
  50. Team team7 = board.registerNewTeam("Team7");
  51. Team team8 = board.registerNewTeam("Team8");
  52. Team team9 = board.registerNewTeam("Team9");
  53. Team team10 = board.registerNewTeam("Team10");
  54. Team team11 = board.registerNewTeam("Team11");
  55. Team team12 = board.registerNewTeam("Team12");
  56. Team team13 = board.registerNewTeam("Team13");
  57. Team team14 = board.registerNewTeam("Team14");
  58. Team team15 = board.registerNewTeam("Team15");
  59. Team team16 = board.registerNewTeam("Team16");
  60.  
  61.  
  62. team1.setPrefix("§r§1");
  63. team2.setPrefix("§a§lDein Name:");
  64. team3.setPrefix("§7" + PermissionsEx.getUser(p).getGroups()[0].getPrefix() + p.getName());
  65. team4.setPrefix("§r§2");
  66. team5.setPrefix("§a§lDein Rang:");
  67. team6.setPrefix("§7" + PermissionsEx.getUser(p).getGroups()[0].getPrefix() + PermissionsEx.getUser(p).getGroups()[0].getName());
  68. team7.setPrefix("§r§3");
  69. team8.setPrefix("§a§lGuthaben:");
  70. team9.setPrefix("§a" + de.xGamerTim.Shop.Economy.EconomySystem.getStringMoney(p.getName()) + " §7€");
  71. team10.setPrefix("§r§4");
  72. team11.setPrefix("§a§lUhrzeit:");
  73. team12.setPrefix("§7" + time);
  74. team13.setPrefix("§r§5");
  75. team14.setPrefix("§a§lOnline:");
  76. team15.setPrefix("§a" + Bukkit.getOnlinePlayers().size() + "§7/§c" + Bukkit.getMaxPlayers());
  77. team16.setPrefix("§r§6");
  78.  
  79. team1.addEntry("§a".toString());
  80. team2.addEntry("§b".toString());
  81. team3.addEntry("§c".toString());
  82. team4.addEntry("§d".toString());
  83. team5.addEntry("§e".toString());
  84. team6.addEntry("§f".toString());
  85. team7.addEntry("§1".toString());
  86. team8.addEntry("§2".toString());
  87. team9.addEntry("§3".toString());
  88. team10.addEntry("§4".toString());
  89. team11.addEntry("§5".toString());
  90. team12.addEntry("§6".toString());
  91. team13.addEntry("§7".toString());
  92. team14.addEntry("§8".toString());
  93. team15.addEntry("§9".toString());
  94. team16.addEntry("§0".toString());
  95.  
  96. obj.getScore("§a".toString()).setScore(16);
  97. obj.getScore("§b".toString()).setScore(15);
  98. obj.getScore("§c".toString()).setScore(14);
  99. obj.getScore("§d".toString()).setScore(13);
  100. obj.getScore("§e".toString()).setScore(12);
  101. obj.getScore("§f".toString()).setScore(11);
  102. obj.getScore("§1".toString()).setScore(10);
  103. obj.getScore("§2".toString()).setScore(9);
  104. obj.getScore("§3".toString()).setScore(8);
  105. obj.getScore("§4".toString()).setScore(7);
  106. obj.getScore("§5".toString()).setScore(6);
  107. obj.getScore("§6".toString()).setScore(5);
  108. obj.getScore("§7".toString()).setScore(4);
  109. obj.getScore("§8".toString()).setScore(3);
  110. obj.getScore("§9".toString()).setScore(2);
  111. obj.getScore("§0".toString()).setScore(1);
  112.  
  113. boards.put(board,p);
  114. p.setScoreboard(board);
  115.  
  116. Bukkit.getScheduler().scheduleAsyncRepeatingTask(Main.getInstance(), new Runnable()
  117. {
  118. @Override
  119. public void run()
  120. {
  121.  
  122. Player player = boards.get(board);
  123.  
  124. for (Scoreboard board : boards.keySet())
  125. {
  126. Date today1 = Calendar.getInstance().getTime();
  127. DateFormat tm = new SimpleDateFormat("HH:mm");
  128. String time2 = tm.format(today1);
  129.  
  130. board.getTeam("Team3").setPrefix("§7" + PermissionsEx.getUser(p).getGroups()[0].getPrefix() + p.getDisplayName());
  131. board.getTeam("Team6").setPrefix("§7" + PermissionsEx.getUser(p).getGroups()[0].getPrefix() + PermissionsEx.getUser(p).getGroups()[0].getName());
  132. board.getTeam("Team9").setPrefix("§a" + de.xGamerTim.Shop.Economy.EconomySystem.getStringMoney(p.getName()) + " §7€");
  133. board.getTeam("Team15").setPrefix("§a" + Bukkit.getOnlinePlayers().size() + "§7/§c" + Bukkit.getMaxPlayers());
  134. board.getTeam("Team12").setPrefix("§7" + time2);
  135.  
  136. p.setScoreboard(board);
  137. }
  138. }
  139.  
  140. }, 0, 20);
  141. }
  142.  
  143. public static void setTablist(Player p, String header, String footer)
  144. {
  145. if(header == null) header = "";
  146. if(footer == null) footer = "";
  147.  
  148. IChatBaseComponent tabHeater = ChatSerializer.a("{\"text\":\"" + header + "\"}");
  149. IChatBaseComponent tabFooter = ChatSerializer.a("{\"text\":\"" + footer + "\"}");
  150.  
  151. PacketPlayOutPlayerListHeaderFooter headerPacket = new PacketPlayOutPlayerListHeaderFooter(tabHeater);
  152.  
  153. try
  154. {
  155. Field field = headerPacket.getClass().getDeclaredField("b");
  156.  
  157. field.setAccessible(true);
  158. field.set(headerPacket, tabFooter);
  159. }
  160. catch(Exception e)
  161. {
  162. e.printStackTrace();
  163. }
  164. finally
  165. {
  166. ((CraftPlayer)p).getHandle().playerConnection.sendPacket(headerPacket);
  167. }
  168. }
  169.  
  170. @EventHandler
  171. public void onJoin(PlayerJoinEvent e)
  172. {
  173.  
  174. Player p = e.getPlayer();
  175.  
  176. setTablist(e.getPlayer(), "§8» §aHerzlich Willkommen auf dem Server §8« \n §8» §bOpen Beta §8«", "§8» §7Dies ist ein Plugintestserver §8«");
  177. setScoreboard(p);
  178. }
  179. }
Advertisement
Add Comment
Please, Sign In to add comment