Advertisement
Lisenochek

Untitled

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