Advertisement
Lisenochek

Untitled

Sep 4th, 2016
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.34 KB | None | 0 0
  1. package com.realistic.scoreboard;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.ChatColor;
  5. import org.bukkit.entity.Player;
  6. import org.bukkit.event.EventHandler;
  7. import org.bukkit.event.Listener;
  8. import org.bukkit.event.server.PluginEnableEvent;
  9. import org.bukkit.scheduler.BukkitRunnable;
  10. import org.bukkit.scoreboard.DisplaySlot;
  11. import org.bukkit.scoreboard.Objective;
  12. import org.bukkit.scoreboard.Score;
  13. import org.bukkit.scoreboard.Scoreboard;
  14. import org.bukkit.scoreboard.ScoreboardManager;
  15.  
  16. import com.realistic.api.API;
  17. import com.realistic.list.MinecraftList;
  18. import com.realistic.tempeture.tempetureAPI;
  19.  
  20. public class ScoreBoard implements Listener {
  21.  
  22. private API plugin;
  23. private MinecraftList ml;
  24.  
  25. public ScoreBoard(API plugin) {
  26. this.plugin = plugin;
  27. }
  28.  
  29. public ScoreBoard(MinecraftList ml) {
  30. this.ml = ml;
  31. }
  32.  
  33. public void enableScoreboard() {
  34.  
  35. for (Player p : Bukkit.getOnlinePlayers()) {
  36.  
  37. ScoreboardManager manager = Bukkit.getScoreboardManager();
  38. Scoreboard board = manager.getNewScoreboard();
  39. StringBuilder s = new StringBuilder().append(ml.temp.get(p).intValue());
  40.  
  41. Objective obj = board.registerNewObjective("obj", "dummy");
  42.  
  43. obj.setDisplaySlot(DisplaySlot.SIDEBAR);
  44. obj.setDisplayName(ChatColor.GREEN + "Состояние игрока");
  45.  
  46. Score line1 = obj.getScore(" ");
  47. line1.setScore(20);
  48.  
  49. Score playerName = obj.getScore(ChatColor.DARK_AQUA + "Ваш никнейм: " + ChatColor.GOLD + p.getName());
  50. playerName.setScore(19);
  51.  
  52. Score line2 = obj.getScore(" ");
  53. line2.setScore(18);
  54.  
  55. Score tempeture = obj.getScore(ChatColor.DARK_AQUA + "Температура: " + ChatColor.GOLD + s.toString());
  56. tempeture.setScore(17);
  57.  
  58. Score line3 = obj.getScore(" ");
  59. line3.setScore(16);
  60.  
  61. Score playerInfo = obj.getScore(ChatColor.GREEN + "Состояние:");
  62. playerInfo.setScore(15);
  63.  
  64. Score line4 = obj.getScore(" ");
  65. line4.setScore(14);
  66.  
  67. if (!ml.bloodingPlayers.containsKey(p.getName()) && !ml.Broken_Bones.containsKey(p.getName())
  68. && !ml.Disease_Cold.containsKey(p.getName()) && !ml.Disease_Pneumonia.containsKey(p.getName())
  69. && !p.isDead()) {
  70.  
  71. Score nothing = obj.getScore(ChatColor.DARK_AQUA + "Я здоровый!");
  72. nothing.setScore(13);
  73. }
  74.  
  75. if (ml.bloodingPlayers.containsKey(p.getName())) {
  76.  
  77. Score blooding = obj.getScore(ChatColor.DARK_AQUA + "У меня кровотечение!");
  78. blooding.setScore(13);
  79. }
  80.  
  81. if (ml.Broken_Bones.containsKey(p.getName())) {
  82.  
  83. Score broken_bones = obj.getScore(ChatColor.DARK_AQUA + "У меня сломана нога!");
  84. broken_bones.setScore(12);
  85. }
  86.  
  87. if (ml.Disease_Cold.containsKey(p.getName()) || ml.Disease_Pneumonia.containsKey(p.getName())) {
  88.  
  89. Score disease = obj.getScore(ChatColor.DARK_AQUA + "Я болен!");
  90. disease.setScore(11);
  91. }
  92.  
  93. if (p.isDead()) {
  94.  
  95. Score dead = obj.getScore(ChatColor.DARK_AQUA + "Вы мертвы!");
  96. dead.setScore(13);
  97. }
  98.  
  99. p.setScoreboard(board);
  100. }
  101. }
  102.  
  103. public void refreshScoreboard() {
  104.  
  105. BukkitRunnable run = new BukkitRunnable() {
  106.  
  107. @Override
  108. public void run() {
  109.  
  110. enableScoreboard();
  111. }
  112. };
  113. run.runTaskTimer(plugin, 30, 30);
  114. }
  115.  
  116. @EventHandler
  117. public void startScoreboard(PluginEnableEvent e) {
  118.  
  119. refreshScoreboard();
  120. }
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement