Advertisement
Guest User

Untitled

a guest
Jan 5th, 2017
919
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.53 KB | None | 0 0
  1. package booting.score;
  2.  
  3. import com.Acrobot.ChestShop.Events.TransactionEvent;
  4. import com.massivecraft.factions.entity.BoardColl;
  5. import com.massivecraft.factions.entity.Faction;
  6. import com.massivecraft.factions.entity.MPlayer;
  7. import com.massivecraft.massivecore.ps.PS;
  8. import java.text.NumberFormat;
  9. import java.util.ArrayList;
  10. import java.util.HashMap;
  11. import java.util.Iterator;
  12. import java.util.Map;
  13. import javax.annotation.Nullable;
  14. import net.milkbowl.vault.economy.Economy;
  15. import org.bukkit.Bukkit;
  16. import org.bukkit.Location;
  17. import org.bukkit.command.ConsoleCommandSender;
  18. import org.bukkit.entity.Player;
  19. import org.bukkit.event.EventHandler;
  20. import org.bukkit.event.Listener;
  21. import org.bukkit.event.player.PlayerCommandPreprocessEvent;
  22. import org.bukkit.event.player.PlayerJoinEvent;
  23. import org.bukkit.event.player.PlayerMoveEvent;
  24. import org.bukkit.event.player.PlayerQuitEvent;
  25. import org.bukkit.event.player.PlayerTeleportEvent;
  26. import org.bukkit.event.server.ServerListPingEvent;
  27. import org.bukkit.metadata.FixedMetadataValue;
  28. import org.bukkit.plugin.RegisteredServiceProvider;
  29. import org.bukkit.plugin.java.JavaPlugin;
  30. import org.bukkit.scoreboard.DisplaySlot;
  31. import org.bukkit.scoreboard.Objective;
  32. import org.bukkit.scoreboard.Scoreboard;
  33.  
  34. public class Main
  35. extends JavaPlugin
  36. implements Listener
  37. {
  38. @EventHandler
  39. public void onBuy(TransactionEvent e)
  40. {
  41. atualizarScore(e.getClient(), null);
  42. if (e.getOwner().isOnline()) {
  43. atualizarScore((Player)e.getOwner(), null);
  44. }
  45. }
  46.  
  47. @EventHandler
  48. public void onTeleport(PlayerTeleportEvent e)
  49. {
  50.  
  51. Player p = e.getPlayer();
  52. MPlayer mplayer = MPlayer.get(p);
  53. int powerplayer = (int)mplayer.getPower();
  54. if (!this.poder.containsKey(p))
  55. {
  56. this.poder.put(p, Integer.valueOf(powerplayer));
  57. atualizarScore(p, null);
  58. }
  59. else if ((((Integer)this.poder.get(p)).intValue() == powerplayer ? 1 : 0) == 0)
  60. {
  61. atualizarScore(p, null);
  62. }
  63. Location to = e.getTo();
  64. Faction zonatof = BoardColl.get().getFactionAt(PS.valueOf(to));
  65. String zonatos = zonatof.getName();
  66. Location from = e.getFrom();
  67. Faction zonafromf = BoardColl.get().getFactionAt(PS.valueOf(from));
  68. String zonafroms = zonafromf.getName();
  69. if (!zonafroms.equalsIgnoreCase(zonatos)) {
  70. atualizarScore(e.getPlayer(), to);
  71. }
  72. }
  73.  
  74. Map<Player, Integer> poder = new HashMap<>();
  75. public Economy economy;
  76.  
  77. private boolean setupEconomy()
  78. {
  79. RegisteredServiceProvider<Economy> economyProvider = getServer().getServicesManager().getRegistration(Economy.class);
  80. if (economyProvider != null) {
  81. this.economy = ((Economy)economyProvider.getProvider());
  82. }
  83. return this.economy != null;
  84. }
  85.  
  86. @SuppressWarnings("rawtypes")
  87. @EventHandler
  88. public void onCommandEvent(PlayerCommandPreprocessEvent e)
  89. {
  90. ArrayList<Player> players = new ArrayList<>();
  91. Iterator localIterator;
  92. Player loop;
  93. if ((e.getMessage().contains("/pay")) || (e.getMessage().contains("/eco")) || (e.getMessage().contains("/money")) || (e.getMessage().contains("/comprar")))
  94. {
  95. e.setCancelled(true);
  96. e.getPlayer().performCommand(e.getMessage().replaceFirst("/", ""));
  97. atualizarScore(e.getPlayer(), null);
  98. for (localIterator = Bukkit.getOnlinePlayers().iterator(); localIterator.hasNext();)
  99. {
  100. loop = (Player)localIterator.next();
  101. if (e.getMessage().contains(loop.getName())) {
  102. atualizarScore(loop, null);
  103. }
  104. }
  105. }
  106. else if (e.getMessage().contains("/f"))
  107. {
  108. String[] m = e.getMessage().split(" ");
  109. if (m[0].equalsIgnoreCase("/f"))
  110. {
  111. for (Player loopplayer : Bukkit.getOnlinePlayers())
  112. {
  113. MPlayer mplayerloop = MPlayer.get(loopplayer);
  114. Faction facloopa = mplayerloop.getFaction();
  115. MPlayer mpcommanda = MPlayer.get(e.getPlayer());
  116. Faction faccommanda = mpcommanda.getFaction();
  117. if (facloopa == faccommanda)
  118. {
  119. players.add(loopplayer);
  120. atualizarScore(loopplayer, null);
  121. }
  122. }
  123. e.setCancelled(true);
  124. e.getPlayer().performCommand(e.getMessage().replaceFirst("/", ""));
  125. for (Player loopplayerd : Bukkit.getOnlinePlayers()) {
  126. if (players.contains(loopplayerd)) {
  127. atualizarScore(loopplayerd, null);
  128. }
  129. }
  130. MPlayer mpcommand = MPlayer.get(e.getPlayer());
  131. Faction faccommand = mpcommand.getFaction();
  132. if (mpcommand.hasFaction()) {
  133. for (Player jogador : Bukkit.getOnlinePlayers())
  134. {
  135. MPlayer mploop = MPlayer.get(jogador);
  136. Faction facloop = mploop.getFaction();
  137. if (faccommand == facloop) {
  138. atualizarScore(jogador, null);
  139. }
  140. }
  141. } else {
  142. for (Player jogador : Bukkit.getOnlinePlayers())
  143. {
  144. MPlayer mploop = MPlayer.get(jogador);
  145. Faction facloop = mploop.getFaction();
  146. if (faccommand == facloop) {
  147. atualizarScore(jogador, null);
  148. }
  149. }
  150. }
  151. atualizarScore(e.getPlayer(), null);
  152. }
  153. }
  154. }
  155.  
  156. @EventHandler
  157. public void onJoin(PlayerJoinEvent e)
  158. {
  159. if (e.getPlayer().hasMetadata("Saiu")) {
  160. e.getPlayer().removeMetadata("Saiu", this);
  161. }
  162. atualizarScore(e.getPlayer(), null);
  163. Player p = e.getPlayer();
  164. MPlayer mp = MPlayer.get(p);
  165. Faction facmp;
  166. if (mp.hasFaction())
  167. {
  168. facmp = mp.getFaction();
  169. for (Player player : Bukkit.getOnlinePlayers())
  170. {
  171. MPlayer mplayer = MPlayer.get(player);
  172. Faction factionmp = mplayer.getFaction();
  173. if (facmp == factionmp) {
  174. atualizarScore(player, null);
  175. }
  176. }
  177. }
  178. }
  179.  
  180. @EventHandler
  181. public void onLeft(PlayerQuitEvent e)
  182. {
  183. Player p = e.getPlayer();
  184. p.setMetadata("Saiu", new FixedMetadataValue(this, null));
  185. MPlayer mp = MPlayer.get(p);
  186. Faction facmp;
  187. if (mp.hasFaction())
  188. {
  189. facmp = mp.getFaction();
  190. for (Player player : Bukkit.getOnlinePlayers())
  191. {
  192. MPlayer mplayer = MPlayer.get(player);
  193. Faction factionmp = mplayer.getFaction();
  194. if (facmp == factionmp) {
  195. atualizarScore(player, null);
  196. }
  197. }
  198. }
  199. }
  200.  
  201. @EventHandler
  202. public void onPing(ServerListPingEvent e)
  203. throws Exception
  204. {
  205. e.setMotd("§4§l§l§lHYPER§f§lNETWORK§a§a§a§e§l§a§a§a§7 (1.8.*) §b❆ §cAcesso ao site§f www.hypernetwork.tk§b ❆");
  206. }
  207.  
  208. public void onEnable()
  209. {
  210. ConsoleCommandSender inicio = Bukkit.getConsoleSender();
  211. inicio.sendMessage("§4[ScoreBoard] §3Plugin inicializado com sucesso!");
  212. getServer().getPluginManager().registerEvents(this, this);
  213. setupEconomy();
  214. }
  215.  
  216. @EventHandler
  217. public void onMove(PlayerMoveEvent e)
  218. {
  219. Player p = e.getPlayer();
  220. MPlayer mplayer = MPlayer.get(p);
  221. Faction f = mplayer.getFaction();
  222. int powerplayer = (int)mplayer.getPower();
  223. if (!this.poder.containsKey(p))
  224. {
  225. this.poder.put(p, Integer.valueOf(powerplayer));
  226. if (mplayer.hasFaction()) {
  227. for (Player loop : Bukkit.getOnlinePlayers())
  228. {
  229. MPlayer mploop = MPlayer.get(loop);
  230. Faction floop = mploop.getFaction();
  231. if (f == floop) {
  232. atualizarScore(loop, null);
  233. }
  234. }
  235. }
  236. atualizarScore(p, null);
  237. }
  238. else if ((((Integer)this.poder.get(p)).intValue() == powerplayer ? 1 : 0) == 0)
  239. {
  240. this.poder.remove(p);
  241. this.poder.put(p, Integer.valueOf(powerplayer));
  242. atualizarScore(p, null);
  243. e.isAsynchronous();
  244. }
  245. Location to = e.getTo();
  246. Faction zonatof = BoardColl.get().getFactionAt(PS.valueOf(to));
  247. String zonatos = zonatof.getName();
  248. Location from = e.getFrom();
  249. Faction zonafromf = BoardColl.get().getFactionAt(PS.valueOf(from));
  250. String zonafroms = zonafromf.getName();
  251. if (!zonafroms.equalsIgnoreCase(zonatos)) {
  252. atualizarScore(e.getPlayer(), to);
  253. }
  254. }
  255.  
  256. @SuppressWarnings("deprecation")
  257. public void atualizarScore(Player p, @Nullable Location to)
  258. {
  259. if (to == null) {
  260. to = p.getLocation();
  261. }
  262. Faction faczona = BoardColl.get().getFactionAt(PS.valueOf(to));
  263. String zonafac = faczona.getName();
  264. MPlayer mplayer = MPlayer.get(p);
  265. Faction faction = mplayer.getFaction();
  266. String factionnome = faction.getName();
  267. int powerplayer = (int)mplayer.getPower();
  268. int powermaxplayer = (int)mplayer.getPowerMax();
  269. int power = (int)faction.getPower();
  270. int terras = faction.getLandCount();
  271. int powermax = (int)faction.getPowerMax();
  272. int faconline = 0;
  273. for (Player jogador : Bukkit.getOnlinePlayers())
  274. {
  275. MPlayer mjogador = MPlayer.get(jogador);
  276. Faction fjogador = mjogador.getFaction();
  277. if ((fjogador == faction) && (!jogador.hasMetadata("Saiu"))) {
  278. faconline++;
  279. }
  280. }
  281. int faconlinemax = faction.getMPlayers().size();
  282. int money = (int)this.economy.getBalance(p.getName());
  283. if (mplayer.hasFaction())
  284. {
  285. Scoreboard score = Bukkit.getScoreboardManager().getNewScoreboard();
  286. Objective objetivo = score.registerNewObjective("teste", "dummy");
  287. objetivo.setDisplaySlot(DisplaySlot.SIDEBAR);
  288. objetivo.setDisplayName("§e[ §f" + zonafac + " §e]");
  289. objetivo.getScore(Bukkit.getOfflinePlayer("§a")).setScore(11);
  290. objetivo.getScore(Bukkit.getOfflinePlayer(" §6Poder: §f" + powerplayer + "/" + powermaxplayer)).setScore(10);
  291. objetivo.getScore(Bukkit.getOfflinePlayer("§e")).setScore(9);
  292. objetivo.getScore(Bukkit.getOfflinePlayer(" §2" + factionnome)).setScore(8);
  293. objetivo.getScore(Bukkit.getOfflinePlayer(" §aOnline: §f" + faconline + "/" + faconlinemax)).setScore(7);
  294. objetivo.getScore(Bukkit.getOfflinePlayer(" §aPoder: §f" + power + "/" + powermax)).setScore(6);
  295. objetivo.getScore(Bukkit.getOfflinePlayer(" §aTerras: §f" + terras)).setScore(5);
  296. objetivo.getScore(Bukkit.getOfflinePlayer("§6§l")).setScore(4);
  297. objetivo.getScore(Bukkit.getOfflinePlayer(" §eCoins: §f" + NumberFormat.getInstance().format(money))).setScore(3);
  298. objetivo.getScore(Bukkit.getOfflinePlayer("§5")).setScore(2);
  299. objetivo.getScore(Bukkit.getOfflinePlayer(" §6 SEU SITE")).setScore(1);
  300. p.setScoreboard(score);
  301. }
  302. else
  303. {
  304. Scoreboard score = Bukkit.getScoreboardManager().getNewScoreboard();
  305. Objective objetivo = score.registerNewObjective("teste", "dummy");
  306. objetivo.setDisplaySlot(DisplaySlot.SIDEBAR);
  307. objetivo.setDisplayName("§e[ §f" + zonafac + " §e]");
  308. objetivo.getScore(Bukkit.getOfflinePlayer("§a")).setScore(8);
  309. objetivo.getScore(Bukkit.getOfflinePlayer(" §6Poder: §f" + powerplayer + "/" + powermaxplayer)).setScore(7);
  310. objetivo.getScore(Bukkit.getOfflinePlayer("§e")).setScore(6);
  311. objetivo.getScore(Bukkit.getOfflinePlayer(" §aSem Facção")).setScore(5);
  312. objetivo.getScore(Bukkit.getOfflinePlayer("§6§l")).setScore(4);
  313. objetivo.getScore(Bukkit.getOfflinePlayer(" §eCoins: §f" + NumberFormat.getInstance().format(money))).setScore(3);
  314. objetivo.getScore(Bukkit.getOfflinePlayer("§6")).setScore(2);
  315. objetivo.getScore(Bukkit.getOfflinePlayer(" §6 SEU SITE")).setScore(1);
  316. p.setScoreboard(score);
  317. }
  318. }
  319. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement