Advertisement
Guest User

Untitled

a guest
Jun 25th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 55.86 KB | None | 0 0
  1. package me.LordCarlosMP.LigaMW;
  2.  
  3. import java.io.PrintStream;
  4. import java.sql.Connection;
  5. import java.sql.DriverManager;
  6. import java.sql.ResultSet;
  7. import java.sql.SQLException;
  8. import java.sql.Statement;
  9. import java.util.Arrays;
  10. import java.util.Collection;
  11. import java.util.HashMap;
  12. import java.util.Iterator;
  13. import java.util.UUID;
  14. import java.util.logging.Logger;
  15. import org.bukkit.Bukkit;
  16. import org.bukkit.ChatColor;
  17. import org.bukkit.DyeColor;
  18. import org.bukkit.Material;
  19. import org.bukkit.Server;
  20. import org.bukkit.command.Command;
  21. import org.bukkit.command.CommandSender;
  22. import org.bukkit.entity.Player;
  23. import org.bukkit.event.EventHandler;
  24. import org.bukkit.event.EventPriority;
  25. import org.bukkit.event.Listener;
  26. import org.bukkit.event.inventory.InventoryClickEvent;
  27. import org.bukkit.event.player.PlayerJoinEvent;
  28. import org.bukkit.inventory.Inventory;
  29. import org.bukkit.inventory.ItemStack;
  30. import org.bukkit.inventory.meta.ItemMeta;
  31. import org.bukkit.inventory.meta.SkullMeta;
  32. import org.bukkit.plugin.PluginManager;
  33. import org.bukkit.plugin.java.JavaPlugin;
  34. import org.bukkit.scheduler.BukkitScheduler;
  35. import org.bukkit.scoreboard.DisplaySlot;
  36. import org.bukkit.scoreboard.Objective;
  37. import org.bukkit.scoreboard.Score;
  38. import org.bukkit.scoreboard.Scoreboard;
  39. import org.bukkit.scoreboard.ScoreboardManager;
  40.  
  41. public class Main
  42. extends JavaPlugin
  43. implements Listener
  44. {
  45. private static Main instance;
  46. private String _usuario = "root";
  47. private String _pwd = "123";
  48. private static String _bd = "Pex";
  49. static String _url = "jdbc:mysql://localhost/" + _bd;
  50. private static Connection conn = null;
  51. static ResultSet rs = null;
  52. static Statement cmd = null;
  53. public static Inventory open;
  54. int MW = 35;
  55. int MM = 52;
  56. int Minimo = 15;
  57. public static HashMap<UUID, InsertQuery> Objets = new HashMap();
  58.  
  59. public void onEnable()
  60. {
  61. instance = this;
  62. getLogger().info("Buscando drivers para MySQL...");
  63. try
  64. {
  65. Class.forName("com.mysql.jdbc.Driver").newInstance();
  66. getLogger().info("Drivers encontrados");
  67. }
  68. catch (Exception e)
  69. {
  70. System.out.println(e.toString());
  71. }
  72. try
  73. {
  74. getLogger().info("Conectandose a la base de datos " + _url + " . . .");
  75. conn = DriverManager.getConnection(_url, this._usuario, this._pwd);
  76. if (conn != null)
  77. {
  78. getLogger().info("Conectado");
  79. getLogger().info("Todo Correcto");
  80. }
  81. }
  82. catch (SQLException ex)
  83. {
  84. getLogger().info("No se ha podido conectar a la base de datos " + ex.getMessage());
  85. }
  86. getServer().getPluginManager().registerEvents(this, this);
  87. }
  88.  
  89. public void onDisable()
  90. {
  91. getLogger().info("se acabo");
  92. try
  93. {
  94. if ((conn != null) && (!conn.isClosed())) {
  95. conn.close();
  96. }
  97. }
  98. catch (Exception e)
  99. {
  100. e.printStackTrace();
  101. }
  102. }
  103.  
  104. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
  105. {
  106. if ((cmd.getName().equalsIgnoreCase("posiciones")) &&
  107. (args.length == 0)) {
  108. clanList(sender);
  109. }
  110. if (cmd.getName().equalsIgnoreCase("top"))
  111. {
  112. if (args.length == 0) {
  113. openPosBoard((Player)sender);
  114. }
  115. }
  116. else
  117. {
  118. if (cmd.getName().equalsIgnoreCase("invitar"))
  119. {
  120. String name = sender.getName();
  121. if (args.length != 1)
  122. {
  123. sender.sendMessage(ChatColor.RED + "uso incorrecto," + ChatColor.GREEN + " se usa asi: " + ChatColor.DARK_PURPLE + "/invitar nick," + ChatColor.GREEN + " ej: " + ChatColor.DARK_PURPLE + "/invitar " + sender.getName());
  124. return false;
  125. }
  126. if (!isInWorld(name))
  127. {
  128. sender.sendMessage(ChatColor.RED + "Necesitas estar en un clan para invitar a un jugador");
  129. return false;
  130. }
  131. String Clan = getClan(name);
  132. if (getCantidad(Clan) >= this.MM)
  133. {
  134. sender.sendMessage(ChatColor.DARK_RED + "EL maximo de miembros es 52");
  135. return false;
  136. }
  137. if (getRango(name) < 2)
  138. {
  139. sender.sendMessage(ChatColor.RED + "tu no puedes hacer eso, necesitas un ascenso");
  140. return false;
  141. }
  142. Player p = Bukkit.getServer().getPlayer(args[0]);
  143. if (p == null)
  144. {
  145. sender.sendMessage(ChatColor.RED + "ese jugador no esta conectado");
  146. return false;
  147. }
  148. if (isInWorld(args[0]))
  149. {
  150. sender.sendMessage(ChatColor.RED + "El jugador ya tiene un clan");
  151. return false;
  152. }
  153. open = Bukkit.createInventory(Bukkit.getServer().getPlayer(args[0]), 27, "�2 Aceptas entrar a " + Clan + "?");
  154. ItemStack si = new ItemStack(Material.STAINED_CLAY, 1, DyeColor.GREEN.getData());
  155. ItemStack no = new ItemStack(Material.STAINED_CLAY, 1, DyeColor.RED.getData());
  156. ItemStack clan = new ItemStack(Material.STAINED_CLAY, 1, DyeColor.WHITE.getData());
  157. ItemMeta sim = si.getItemMeta();
  158. ItemMeta nom = no.getItemMeta();
  159. ItemMeta clanm = clan.getItemMeta();
  160. sim.setDisplayName("�aSi");
  161. nom.setDisplayName("�4No");
  162. clanm.setDisplayName(Clan);
  163. clanm.setLore(Arrays.asList(new String[] { "�bSigla: " + Clan, "�a�lNombre: " + getName(Clan), "�5�lPuntuacion: " + getPuntuacion(Clan), "�4�lNumero de Miembros: " + getCantidad(Clan) }));
  164. si.setItemMeta(sim);
  165. no.setItemMeta(nom);
  166. clan.setItemMeta(clanm);
  167. open.setItem(11, si);
  168. open.setItem(15, no);
  169. open.setItem(22, clan);
  170. p.openInventory(open);
  171. sender.sendMessage(ChatColor.AQUA + "has invitado a " + p.getName() + " a " + Clan);
  172.  
  173. return false;
  174. }
  175. if (cmd.getName().equalsIgnoreCase("borrar"))
  176. {
  177. if (args.length == 1) {
  178. if (sender.hasPermission("clanes.admin"))
  179. {
  180. borrarClan(args[0]);
  181. sender.sendMessage(ChatColor.GREEN + "----------------------------------");
  182. sender.sendMessage(ChatColor.DARK_RED + "Dale Lord!!!!! " + ChatColor.GREEN + "Clan borrado, el nombre ");
  183. sender.sendMessage(ChatColor.GREEN + args[0] + " queda libre por orden del se�or.");
  184. sender.sendMessage(ChatColor.GREEN + "----------------------------------");
  185. }
  186. else
  187. {
  188. sender.sendMessage(ChatColor.RED + "No tienes permiso para hacer eso, para borrar tu clan usa solo " + ChatColor.DARK_PURPLE + "/borrar");
  189. }
  190. }
  191. return false;
  192. }
  193. if ((cmd.getName().equalsIgnoreCase("clan")) &&
  194. (args.length == 0)) {
  195. openMenuGeneral(Bukkit.getServer().getPlayer(sender.getName()));
  196. }
  197. }
  198. return false;
  199. }
  200.  
  201. public void CrearCW(int Tiempo, String CW, String Rojo, String Verde, String Azul, String Amarillo)
  202. {
  203. try
  204. {
  205. cmd = conn.createStatement();
  206. cmd.executeUpdate("DROP TABLE " + CW);
  207. cmd = conn.createStatement();
  208. cmd.executeUpdate("INSERT INTO " + CW + " VALUES ('" + Rojo + ")");
  209. cmd = conn.createStatement();
  210. cmd.executeUpdate("INSERT INTO " + CW + " VALUES ('" + Verde + ")");
  211. cmd = conn.createStatement();
  212. cmd.executeUpdate("INSERT INTO " + CW + " VALUES ('" + Azul + ")");
  213. cmd = conn.createStatement();
  214. cmd.executeUpdate("INSERT INTO " + CW + " VALUES ('" + Amarillo + ")");
  215. }
  216. catch (Exception localException) {}
  217. }
  218.  
  219. public void OrganizaCW()
  220. {
  221. int Players = Bukkit.getOnlinePlayers().size();
  222. String[] Clanes = new String[Players];
  223. int[] NClanes = new int[Players];
  224. for (Player p : Bukkit.getOnlinePlayers())
  225. {
  226. String Clan = getClan(p.getName());
  227. Boolean is = Boolean.valueOf(false);
  228. for (int i = 0; i < Players; i++) {
  229. if (Clanes[i].equals(Clan))
  230. {
  231. NClanes[i] += 1;
  232. is = Boolean.valueOf(true);
  233. break;
  234. }
  235. }
  236. if (!is.booleanValue()) {
  237. for (int i = 0; i < Players; i++) {
  238. if (Clanes[i] == null)
  239. {
  240. Clanes[i] = Clan;
  241. break;
  242. }
  243. }
  244. }
  245. }
  246. int f = 0;
  247. for (int i = 0; i < Players; i++) {
  248. if (NClanes[i] > this.Minimo - 1) {
  249. f++;
  250. }
  251. }
  252. String[] ClanesQueParticipan = new String[f];
  253. for (int i = 0; i < Players; i++) {
  254. if (NClanes[i] > this.Minimo - 1) {
  255. for (int l = 0; l < f; l++) {
  256. if (ClanesQueParticipan[l] == null) {
  257. ClanesQueParticipan[l] = Clanes[i];
  258. }
  259. }
  260. }
  261. }
  262. int v = 0;
  263. while ((f < 4) && (v < 5))
  264. {
  265. CrearCW(v * 20 * 60 * 15, "CW" + v, ClanesQueParticipan[f], ClanesQueParticipan[(f - 1)], ClanesQueParticipan[(f - 2)], ClanesQueParticipan[(f - 3)]);
  266. v++;
  267. f -= 4;
  268. }
  269. }
  270.  
  271. public void clanList(CommandSender sender)
  272. {
  273. try
  274. {
  275. int f = 0;
  276. cmd = conn.createStatement();
  277. rs = cmd.executeQuery("SELECT COUNT(*) FROM Clanes WHERE puntuacion1 > 0 OR puntuacion2 > 0 OR puntuacion3 > 0 OR puntuacion4 > 0 OR puntuacion5 > 0 OR puntuacion6 > 0 OR puntuacion7 > 0 OR puntuacion8 > 0 ");
  278. while (rs.next()) {
  279. f = rs.getInt(1);
  280. }
  281. rs.close();
  282. String[] Sarreglo = new String[f];
  283. int[] arreglo = new int[f];
  284. int i = 0;
  285. cmd = conn.createStatement();
  286. rs = cmd.executeQuery("SELECT sigla,puntuacion1,puntuacion2,puntuacion3,puntuacion4,puntuacion5,puntuacion6,puntuacion7,puntuacion8 FROM Clanes");
  287. while (rs.next())
  288. {
  289. int p = rs.getInt(2) + rs.getInt(3) + rs.getInt(4) + rs.getInt(5) + rs.getInt(6) + rs.getInt(7) + rs.getInt(8) + rs.getInt(9);
  290. if (p > 0)
  291. {
  292. Sarreglo[i] = rs.getString(1);
  293. arreglo[i] = p;
  294. i++;
  295. }
  296. }
  297. rs.close();
  298. for (int j = 0; j < f; j++) {
  299. for (int k = 0; k < f - 1; k++) {
  300. if (arreglo[k] < arreglo[(k + 1)])
  301. {
  302. int mayor = arreglo[k];
  303. arreglo[k] = arreglo[(k + 1)];
  304. arreglo[(k + 1)] = mayor;
  305.  
  306. String sr = Sarreglo[k];
  307. Sarreglo[k] = Sarreglo[(k + 1)];
  308. Sarreglo[(k + 1)] = sr;
  309. }
  310. }
  311. }
  312. for (int l = 0; l < f; l++) {
  313. sender.sendMessage(ChatColor.DARK_GREEN + "Posicion " + ChatColor.RED + ChatColor.BOLD + (l + 1) + ChatColor.DARK_GREEN + " : " + ChatColor.DARK_PURPLE + Sarreglo[l] + ChatColor.DARK_GREEN + " Puntuacion " + ChatColor.DARK_RED + ChatColor.BOLD + arreglo[l]);
  314. }
  315. }
  316. catch (Exception e)
  317. {
  318. e.printStackTrace();
  319. }
  320. }
  321.  
  322. public void openPosBoard(Player p)
  323. {
  324. try
  325. {
  326. int f = 0;
  327. cmd = conn.createStatement();
  328. rs = cmd.executeQuery("SELECT COUNT(*) FROM Clanes WHERE puntuacion1 > 0 OR puntuacion2 > 0 OR puntuacion3 > 0 OR puntuacion4 > 0 OR puntuacion5 > 0 OR puntuacion6 > 0 OR puntuacion7 > 0 OR puntuacion8 > 0 ");
  329. while (rs.next()) {
  330. f = rs.getInt(1);
  331. }
  332. rs.close();
  333. String[] Sarreglo = new String[f];
  334. int[] arreglo = new int[f];
  335. int i = 0;
  336. cmd = conn.createStatement();
  337. rs = cmd.executeQuery("SELECT sigla,puntuacion1,puntuacion2,puntuacion3,puntuacion4,puntuacion5,puntuacion6,puntuacion7,puntuacion8 FROM Clanes");
  338. while (rs.next())
  339. {
  340. int a = rs.getInt(2) + rs.getInt(3) + rs.getInt(4) + rs.getInt(5) + rs.getInt(6) + rs.getInt(7) + rs.getInt(8) + rs.getInt(9);
  341. if (a > 0)
  342. {
  343. Sarreglo[i] = rs.getString(1);
  344. arreglo[i] = a;
  345. i++;
  346. }
  347. }
  348. rs.close();
  349. for (int j = 0; j < f; j++) {
  350. for (int k = 0; k < f - 1; k++) {
  351. if (arreglo[k] < arreglo[(k + 1)])
  352. {
  353. int mayor = arreglo[k];
  354. arreglo[k] = arreglo[(k + 1)];
  355. arreglo[(k + 1)] = mayor;
  356.  
  357. String sr = Sarreglo[k];
  358. Sarreglo[k] = Sarreglo[(k + 1)];
  359. Sarreglo[(k + 1)] = sr;
  360. }
  361. }
  362. }
  363. ScoreboardManager manager = Bukkit.getScoreboardManager();
  364. Scoreboard board = manager.getNewScoreboard();
  365. Objective objective = board.registerNewObjective("posis", "dummy");
  366. objective.setDisplaySlot(DisplaySlot.SIDEBAR);
  367. objective.setDisplayName(ChatColor.DARK_RED + ChatColor.BOLD + " TOP 10 ");
  368. if (f == 0)
  369. {
  370. Score S1 = objective.getScore(ChatColor.AQUA + " �Promimamente! ");
  371. S1.setScore(2);
  372. Score S2 = objective.getScore(ChatColor.AQUA + "Cuando Inicie La Liga ");
  373. S2.setScore(1);
  374. }
  375. else
  376. {
  377. for (int l = 0; (l < 10) && (l < f); l++)
  378. {
  379. Score S1 = objective.getScore(ChatColor.AQUA + Sarreglo[l]);
  380. S1.setScore(arreglo[l]);
  381. }
  382. }
  383. p.setScoreboard(board);
  384.  
  385. final Player pl = p;
  386. BukkitScheduler scheduler = getServer().getScheduler();
  387. scheduler.scheduleSyncDelayedTask(this, new Runnable()
  388. {
  389. public void run()
  390. {
  391. Main.setScores(pl);
  392. }
  393. }, 200L);
  394. }
  395. catch (Exception e)
  396. {
  397. e.printStackTrace();
  398. }
  399. }
  400.  
  401. public static boolean nuevoClan(String sigla, String nombre, String Lider)
  402. {
  403. try
  404. {
  405. cmd = conn.createStatement();
  406. cmd.executeUpdate("CREATE TABLE " + sigla + " (" +
  407. "nick VARCHAR(20), " +
  408. "rango INT, " +
  409. "titular INT)");
  410. }
  411. catch (Exception ex)
  412. {
  413. return false;
  414. }
  415. try
  416. {
  417. cmd = conn.createStatement();
  418. cmd.executeUpdate("INSERT INTO Clanes VALUES ('" + sigla + "', '" + nombre + "', " + 0 + ", " + 0 + ", " + 0 + ", " + 0 + ", " + 0 + ", " + 0 + ", " + 0 + ", " + 0 + ", " + 0 + ")");
  419. cmd.close();
  420. }
  421. catch (SQLException ex)
  422. {
  423. return false;
  424. }
  425. try
  426. {
  427. cmd = conn.createStatement();
  428. cmd.executeUpdate("INSERT INTO " + sigla + " VALUES ('" + Lider + "', " + 9 + ", " + 1 + ")");
  429. cmd.close();
  430. return true;
  431. }
  432. catch (Exception ex) {}
  433. return false;
  434. }
  435.  
  436. public void borrarClan(String sigla)
  437. {
  438. try
  439. {
  440. cmd = conn.createStatement();
  441. cmd.executeUpdate("DROP TABLE " + sigla);
  442. }
  443. catch (SQLException ex)
  444. {
  445. return;
  446. }
  447. try
  448. {
  449. cmd = conn.createStatement();
  450. cmd.executeUpdate("DELETE FROM Clanes WHERE sigla ='" + sigla + "'");
  451. cmd.close();
  452. }
  453. catch (SQLException ex) {}
  454. }
  455.  
  456. public static boolean isInWorld(String nombre)
  457. {
  458. int clanes = 0;
  459. try
  460. {
  461. cmd = conn.createStatement();
  462. rs = cmd.executeQuery("SELECT COUNT(*) FROM Clanes");
  463. rs.next();
  464. clanes = rs.getInt(1);
  465. String[] Sclanes = new String[clanes];
  466. rs.close();
  467.  
  468. cmd = conn.createStatement();
  469. rs = cmd.executeQuery("SELECT sigla FROM Clanes");
  470. int u = 0;
  471. while (rs.next())
  472. {
  473. Sclanes[u] = rs.getString("sigla");
  474. u++;
  475. }
  476. rs.close();
  477. for (int i = 0; i < clanes; i++)
  478. {
  479. cmd = conn.createStatement();
  480. rs = cmd.executeQuery("SELECT nick FROM " + Sclanes[i] + " WHERE nick ='" + nombre + "'");
  481. if (rs.next()) {
  482. return true;
  483. }
  484. rs.close();
  485. }
  486. }
  487. catch (Exception e)
  488. {
  489. e.printStackTrace();
  490. }
  491. return false;
  492. }
  493.  
  494. public boolean isInClan(String clan, String nombre)
  495. {
  496. try
  497. {
  498. cmd = conn.createStatement();
  499. rs = cmd.executeQuery("SELECT nick FROM " + clan + " WHERE nick ='" + nombre + "'");
  500. if (rs.next())
  501. {
  502. rs.close();
  503. return true;
  504. }
  505. rs.close();
  506. }
  507. catch (Exception e)
  508. {
  509. e.printStackTrace();
  510. }
  511. return false;
  512. }
  513.  
  514. public String[] Miembros(String clan)
  515. {
  516. int i = 0;
  517. String[] Miembros = new String[getCantidad(clan)];
  518. try
  519. {
  520. rs = cmd.executeQuery("SELECT nick FROM " + clan);
  521. while (rs.next())
  522. {
  523. Miembros[i] = rs.getString(1);
  524. i++;
  525. }
  526. }
  527. catch (Exception e)
  528. {
  529. e.printStackTrace();
  530. }
  531. return Miembros;
  532. }
  533.  
  534. public String[] MiembrosT(String clan)
  535. {
  536. int i = 0;
  537. String[] Miembros = new String[getCantidadW(clan)];
  538. try
  539. {
  540. cmd = conn.createStatement();
  541. rs = cmd.executeQuery("SELECT nick FROM " + clan + " WHERE titular = 1");
  542. while (rs.next())
  543. {
  544. Miembros[i] = rs.getString(1);
  545. i++;
  546. }
  547. }
  548. catch (Exception e)
  549. {
  550. e.printStackTrace();
  551. }
  552. return Miembros;
  553. }
  554.  
  555. public String[] MiembrosNT(String clan)
  556. {
  557. int i = 0;
  558. String[] Miembros = new String[getCantidadNW(clan)];
  559. try
  560. {
  561. cmd = conn.createStatement();
  562. rs = cmd.executeQuery("SELECT nick FROM " + clan + " WHERE titular = 0");
  563. while (rs.next())
  564. {
  565. Miembros[i] = rs.getString(1);
  566. i++;
  567. }
  568. }
  569. catch (Exception e)
  570. {
  571. e.printStackTrace();
  572. }
  573. return Miembros;
  574. }
  575.  
  576. public void Anadir(String sigla, String nombre)
  577. {
  578. try
  579. {
  580. cmd = conn.createStatement();
  581. cmd.executeUpdate("INSERT INTO " + sigla + " VALUES ('" + nombre + "', " + 1 + ", " + 0 + ")");
  582. cmd.close();
  583. }
  584. catch (Exception localException) {}
  585. }
  586.  
  587. public void Eliminar(String sigla, String nombre)
  588. {
  589. try
  590. {
  591. cmd = conn.createStatement();
  592. cmd.executeUpdate("DELETE FROM " + sigla + " WHERE nick = '" + nombre + "'");
  593. cmd.close();
  594. }
  595. catch (Exception localException) {}
  596. }
  597.  
  598. public int getPuntuacion(String clan)
  599. {
  600. int puntuacion = 0;
  601. try
  602. {
  603. cmd = conn.createStatement();
  604. rs = cmd.executeQuery("SELECT puntuacion1, puntuacion2, puntuacion3, puntuacion4, puntuacion5, puntuacion6, puntuacion7, puntuacion8 FROM Clanes WHERE sigla ='" + clan + "'");
  605. rs.next();
  606. puntuacion = rs.getInt("puntuacion1") + rs.getInt("puntuacion2") + rs.getInt("puntuacion3") + rs.getInt("puntuacion4") + rs.getInt("puntuacion5") + rs.getInt("puntuacion6") + rs.getInt("puntuacion7") + rs.getInt("puntuacion8");
  607. rs.close();
  608. }
  609. catch (Exception e)
  610. {
  611. e.printStackTrace();
  612. }
  613. return puntuacion;
  614. }
  615.  
  616. public void setPuntuacion(String clan, int puntuacion)
  617. {
  618. int p1 = 0;
  619. int p2 = 0;
  620. int p3 = 0;
  621. int p4 = 0;
  622. int p5 = 0;
  623. int p6 = 0;
  624. int p7 = 0;
  625. try
  626. {
  627. cmd = conn.createStatement();
  628. rs = cmd.executeQuery("SELECT sigla, puntuacion1, puntuacion2, puntuacion3, puntuacion4, puntuacion5, puntuacion6, puntuacion7 FROM Clanes WHERE sigla = '" + clan + "'");
  629. while (rs.next())
  630. {
  631. p1 = rs.getInt(2);
  632. p2 = rs.getInt(3);
  633. p3 = rs.getInt(4);
  634. p4 = rs.getInt(5);
  635. p5 = rs.getInt(6);
  636. p6 = rs.getInt(7);
  637. p7 = rs.getInt(8);
  638. }
  639. rs.close();
  640. cmd.close();
  641. }
  642. catch (SQLException e)
  643. {
  644. e.printStackTrace();
  645. }
  646. try
  647. {
  648. cmd = conn.createStatement();
  649. cmd.executeUpdate("UPDATE Clanes SET puntuacion1 = " + puntuacion + ",puntuacion2 = " + p1 + ",puntuacion3 = " + p2 + ",puntuacion4 = " + p3 + ",puntuacion5 = " + p4 + ",puntuacion6 = " + p5 + ",puntuacion7 = " + p6 + ",puntuacion8 = " + p7 + " WHERE sigla='" + clan + "'");
  650. }
  651. catch (SQLException e)
  652. {
  653. e.printStackTrace();
  654. }
  655. }
  656.  
  657. public void resetPuntuacion(String clan)
  658. {
  659. int p1 = 0;
  660. int p2 = 0;
  661. int p3 = 0;
  662. int p4 = 0;
  663. int p5 = 0;
  664. int p6 = 0;
  665. int p7 = 0;
  666. try
  667. {
  668. cmd = conn.createStatement();
  669. cmd.executeUpdate("UPDATE Clanes SET puntuacion1 = 0,puntuacion2 = " + p1 + ",puntuacion3 = " + p2 + ",puntuacion4 = " + p3 + ",puntuacion5 = " + p4 + ",puntuacion6 = " + p5 + ",puntuacion7 = " + p6 + ",puntuacion8 = " + p7 + " WHERE sigla='" + clan + "'");
  670. }
  671. catch (SQLException e)
  672. {
  673. e.printStackTrace();
  674. }
  675. }
  676.  
  677. public void Paticipa(String clan)
  678. {
  679. try
  680. {
  681. cmd = conn.createStatement();
  682. cmd.executeUpdate("UPDATE Clanes SET participa = 1 WHERE sigla='" + clan + "'");
  683. }
  684. catch (SQLException e)
  685. {
  686. e.printStackTrace();
  687. }
  688. }
  689.  
  690. public void noPaticipa(String clan)
  691. {
  692. try
  693. {
  694. cmd = conn.createStatement();
  695. cmd.executeUpdate("UPDATE Clanes SET participa = 0 WHERE sigla='" + clan + "'");
  696. }
  697. catch (SQLException e)
  698. {
  699. e.printStackTrace();
  700. }
  701. }
  702.  
  703. public void setTitular(String clan, String nick)
  704. {
  705. try
  706. {
  707. cmd = conn.createStatement();
  708. cmd.executeUpdate("UPDATE " + clan + " SET titular = " + 1 + " WHERE nick='" + nick + "'");
  709. }
  710. catch (SQLException e)
  711. {
  712. e.printStackTrace();
  713. }
  714. }
  715.  
  716. public void unsetTitular(String clan, String nick)
  717. {
  718. try
  719. {
  720. cmd = conn.createStatement();
  721. cmd.executeUpdate("UPDATE " + clan + " SET titular = " + 0 + " WHERE nick='" + nick + "'");
  722. }
  723. catch (SQLException e)
  724. {
  725. e.printStackTrace();
  726. }
  727. }
  728.  
  729. public boolean isTitular(String clan, String nick)
  730. {
  731. try
  732. {
  733. cmd = conn.createStatement();
  734. rs = cmd.executeQuery("SELECT titular FROM " + clan + " WHERE nick ='" + nick + "'");
  735. if (rs.next())
  736. {
  737. if (rs.getInt(1) == 1) {
  738. return true;
  739. }
  740. return false;
  741. }
  742. }
  743. catch (SQLException e)
  744. {
  745. e.printStackTrace();
  746. }
  747. return false;
  748. }
  749.  
  750. public void setRango(String nick, int rango)
  751. {
  752. int clanes = 0;
  753. try
  754. {
  755. cmd = conn.createStatement();
  756. rs = cmd.executeQuery("SELECT sigla FROM Clanes");
  757. while (rs.next()) {
  758. clanes++;
  759. }
  760. rs.close();
  761. String[] Sclanes = new String[clanes];
  762.  
  763. cmd = conn.createStatement();
  764. rs = cmd.executeQuery("SELECT sigla FROM Clanes");
  765. int u = 0;
  766. while (rs.next())
  767. {
  768. Sclanes[u] = rs.getString("sigla");
  769. u++;
  770. }
  771. rs.close();
  772. cmd.close();
  773. for (int i = 0; i < clanes; i++)
  774. {
  775. cmd = conn.createStatement();
  776. rs = cmd.executeQuery("SELECT nick FROM " + Sclanes[i] + " WHERE nick ='" + nick + "'");
  777. if (rs.next())
  778. {
  779. cmd.close();
  780. cmd = conn.createStatement();
  781. cmd.executeUpdate("UPDATE " + Sclanes[i] + " SET rango = " + rango + " WHERE nick='" + nick + "'");
  782. cmd.close();
  783. rs.close();
  784. return;
  785. }
  786. rs.close();
  787. cmd.close();
  788. }
  789. }
  790. catch (Exception e)
  791. {
  792. e.printStackTrace();
  793. }
  794. }
  795.  
  796. public static int getRango(String nick)
  797. {
  798. int r = 0;
  799. try
  800. {
  801. String[] Sclanes = new String[cuentaClanes()];
  802.  
  803. cmd = conn.createStatement();
  804. rs = cmd.executeQuery("SELECT sigla FROM Clanes");
  805. int u = 0;
  806. while (rs.next())
  807. {
  808. Sclanes[u] = rs.getString(1);
  809. u++;
  810. }
  811. rs.close();
  812. for (int i = 0; i < cuentaClanes(); i++)
  813. {
  814. cmd = conn.createStatement();
  815. rs = cmd.executeQuery("SELECT rango FROM " + Sclanes[i] + " WHERE nick ='" + nick + "'");
  816. if (rs.next())
  817. {
  818. r = rs.getInt(1);
  819. cmd.close();
  820. rs.close();
  821. return r;
  822. }
  823. rs.close();
  824. cmd.close();
  825. }
  826. }
  827. catch (Exception e)
  828. {
  829. e.printStackTrace();
  830. }
  831. return r;
  832. }
  833.  
  834. public String getLider(String clan)
  835. {
  836. try
  837. {
  838. cmd = conn.createStatement();
  839. rs = cmd.executeQuery("SELECT nick FROM " + clan + " WHERE rango =9");
  840. if (rs.next())
  841. {
  842. String p = rs.getString(1);
  843. cmd.close();
  844. rs.close();
  845. return p;
  846. }
  847. rs.close();
  848. cmd.close();
  849. }
  850. catch (Exception e)
  851. {
  852. e.printStackTrace();
  853. }
  854. return null;
  855. }
  856.  
  857. public static String getClan(String nombre)
  858. {
  859. try
  860. {
  861. int clanes = cuentaClanes();
  862. String[] Sclanes = new String[cuentaClanes()];
  863.  
  864. cmd = conn.createStatement();
  865. rs = cmd.executeQuery("SELECT sigla FROM Clanes");
  866. int u = 0;
  867. while (rs.next())
  868. {
  869. Sclanes[u] = rs.getString("sigla");
  870. u++;
  871. }
  872. rs.close();
  873. for (int i = 0; i < clanes; i++)
  874. {
  875. cmd = conn.createStatement();
  876. rs = cmd.executeQuery("SELECT nick FROM " + Sclanes[i] + " WHERE nick ='" + nombre + "'");
  877. if (rs.next())
  878. {
  879. rs.close();
  880. return Sclanes[i];
  881. }
  882. rs.close();
  883. }
  884. }
  885. catch (Exception e)
  886. {
  887. e.printStackTrace();
  888. }
  889. return "";
  890. }
  891.  
  892. public void cambiarNombre(String clan, String nuevo)
  893. {
  894. try
  895. {
  896. cmd = conn.createStatement();
  897. cmd.executeUpdate("UPDATE Clanes SET sigla = " + nuevo + " WHERE sigla='" + clan + "'");
  898. }
  899. catch (SQLException e)
  900. {
  901. e.printStackTrace();
  902. }
  903. }
  904.  
  905. public void cambiarDescripcion(String vieja, String nueva)
  906. {
  907. try
  908. {
  909. cmd = conn.createStatement();
  910. cmd.executeUpdate("UPDATE Clanes SET nombre = " + nueva + " WHERE nombre='" + vieja + "'");
  911. }
  912. catch (SQLException e)
  913. {
  914. e.printStackTrace();
  915. }
  916. }
  917.  
  918. public boolean clanExists(String clan)
  919. {
  920. try
  921. {
  922. cmd = conn.createStatement();
  923. rs = cmd.executeQuery("SELECT * FROM " + clan);
  924. return true;
  925. }
  926. catch (SQLException e) {}
  927. return false;
  928. }
  929.  
  930. public String getName(String clan)
  931. {
  932. try
  933. {
  934. cmd = conn.createStatement();
  935. rs = cmd.executeQuery("SELECT nombre FROM Clanes WHERE sigla ='" + clan + "'");
  936. if (rs.next()) {
  937. return rs.getString(1);
  938. }
  939. }
  940. catch (SQLException localSQLException) {}
  941. return "";
  942. }
  943.  
  944. public static int getCantidad(String clan)
  945. {
  946. int c = 0;
  947. try
  948. {
  949. cmd = conn.createStatement();
  950. rs = cmd.executeQuery("SELECT COUNT(*) FROM " + clan);
  951. while (rs.next()) {
  952. c = rs.getInt(1);
  953. }
  954. rs.close();
  955. }
  956. catch (Exception e)
  957. {
  958. e.printStackTrace();
  959. }
  960. return c;
  961. }
  962.  
  963. public Boolean isInCW(String clan)
  964. {
  965. try
  966. {
  967. cmd = conn.createStatement();
  968. rs = cmd.executeQuery("SELECT participa FROM Clanes WHERE sigla ='" + clan + "'");
  969. while (rs.next()) {
  970. if (rs.getInt(1) == 2) {
  971. return Boolean.valueOf(true);
  972. }
  973. }
  974. rs.close();
  975. }
  976. catch (Exception e)
  977. {
  978. e.printStackTrace();
  979. }
  980. return Boolean.valueOf(false);
  981. }
  982.  
  983. public int getCantidadW(String clan)
  984. {
  985. int c = 0;
  986. try
  987. {
  988. cmd = conn.createStatement();
  989. rs = cmd.executeQuery("SELECT COUNT(*) FROM " + clan + " WHERE titular = 1 ");
  990. while (rs.next()) {
  991. c = rs.getInt(1);
  992. }
  993. rs.close();
  994. }
  995. catch (Exception e)
  996. {
  997. e.printStackTrace();
  998. }
  999. return c;
  1000. }
  1001.  
  1002. public void bungeeKick(String nick)
  1003. {
  1004. Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), "sync console all kickear " + nick);
  1005. }
  1006.  
  1007. public int getCantidadNW(String clan)
  1008. {
  1009. int c = 0;
  1010. try
  1011. {
  1012. cmd = conn.createStatement();
  1013. rs = cmd.executeQuery("SELECT COUNT(*) FROM " + clan + " WHERE titular = 0 ");
  1014. while (rs.next()) {
  1015. c = rs.getInt(1);
  1016. }
  1017. rs.close();
  1018. }
  1019. catch (Exception e)
  1020. {
  1021. e.printStackTrace();
  1022. }
  1023. return c;
  1024. }
  1025.  
  1026. public static int cuentaClanes()
  1027. {
  1028. int c = 0;
  1029. try
  1030. {
  1031. cmd = conn.createStatement();
  1032. rs = cmd.executeQuery("SELECT COUNT(*) FROM Clanes");
  1033. while (rs.next()) {
  1034. c = rs.getInt(1);
  1035. }
  1036. rs.close();
  1037. }
  1038. catch (Exception e)
  1039. {
  1040. e.printStackTrace();
  1041. }
  1042. return c;
  1043. }
  1044.  
  1045. public void construxthor(Player p)
  1046. {
  1047. InsertQuery Query = new InsertQuery(p);
  1048. Objets.put(p.getUniqueId(), Query);
  1049. Query.siglaOpener(p);
  1050. }
  1051.  
  1052. static InsertQuery getMapPlayer(UUID uuid)
  1053. {
  1054. return (InsertQuery)Objets.get(uuid);
  1055. }
  1056.  
  1057. public void openMenuGeneral(Player sender)
  1058. {
  1059. String nombre = sender.getName();
  1060. if (!isInWorld(nombre))
  1061. {
  1062. open = Bukkit.createInventory(Bukkit.getServer().getPlayer(nombre), 27, "�2No tienes Clan, Quieres crear uno?");
  1063. ItemStack si = new ItemStack(Material.STAINED_CLAY, 1, DyeColor.GREEN.getData());
  1064. ItemStack no = new ItemStack(Material.STAINED_CLAY, 1, DyeColor.RED.getData());
  1065. ItemMeta sim = si.getItemMeta();
  1066. ItemMeta nom = no.getItemMeta();
  1067. sim.setDisplayName("�aSi");
  1068. nom.setDisplayName("�4No");
  1069. si.setItemMeta(sim);
  1070. no.setItemMeta(nom);
  1071. open.setItem(11, si);
  1072. open.setItem(15, no);
  1073. Bukkit.getServer().getPlayer(sender.getName()).openInventory(open);
  1074. }
  1075. else
  1076. {
  1077. int r = getRango(sender.getName());
  1078. String clan = getClan(nombre);
  1079. open = Bukkit.createInventory(Bukkit.getServer().getPlayer(nombre), 27, "�2Clan �5" + clan);
  1080. ItemStack Miembros = new ItemStack(Material.CHEST, 1);
  1081. ItemMeta Miembrosm = Miembros.getItemMeta();
  1082. Miembrosm.setDisplayName(ChatColor.GREEN + "Miembros");
  1083. Miembrosm.setLore(Arrays.asList(new String[] { "�bAsciende, degrada o expulsa miembros" }));
  1084. Miembros.setItemMeta(Miembrosm);
  1085. if (r < 3) {
  1086. open.setItem(13, Miembros);
  1087. } else {
  1088. open.setItem(12, Miembros);
  1089. }
  1090. ItemStack head1 = new ItemStack(Material.SKULL_ITEM, 1, (short)3);
  1091. SkullMeta head1m = (SkullMeta)head1.getItemMeta();
  1092. String Lider = getLider(clan);
  1093. if (Lider == null) {
  1094. Lider = "SinLider";
  1095. }
  1096. head1m.setDisplayName("�bLider: �5" + Lider);
  1097. String owner = getLider(clan);
  1098. head1m.setOwner(owner);
  1099. head1.setItemMeta(head1m);
  1100. if (r == 9)
  1101. {
  1102. ItemStack Borrar = new ItemStack(Material.LAVA_BUCKET);
  1103. ItemMeta Borrarm = Borrar.getItemMeta();
  1104. Borrarm.setDisplayName(ChatColor.GREEN + "Borrar");
  1105. Borrarm.setLore(Arrays.asList(new String[] { "�bBorra el clan" }));
  1106. Borrar.setItemMeta(Borrarm);
  1107. open.setItem(22, Borrar);
  1108. }
  1109. else
  1110. {
  1111. ItemStack Salir = new ItemStack(Material.WOOD_DOOR, 1);
  1112. ItemMeta Salirm = Salir.getItemMeta();
  1113. Salirm.setDisplayName(ChatColor.GREEN + "Salir del clan");
  1114. Salirm.setLore(Arrays.asList(new String[] { "�bAbandona " + getClan(sender.getName()) }));
  1115. Salir.setItemMeta(Salirm);
  1116. open.setItem(22, Salir);
  1117. }
  1118. if (r > 2)
  1119. {
  1120. ItemStack Whitelist = new ItemStack(Material.BOOK_AND_QUILL, 1);
  1121. ItemMeta Whitelistm = Whitelist.getItemMeta();
  1122. Whitelistm.setDisplayName(ChatColor.GREEN + "Whitelist");
  1123. Whitelistm.setLore(Arrays.asList(new String[] { "�bMira los jugadores que estan en la Whitelist" }));
  1124. Whitelist.setItemMeta(Whitelistm);
  1125. open.setItem(14, Whitelist);
  1126. }
  1127. ItemStack top = new ItemStack(Material.FIREWORK, 1);
  1128. ItemMeta topm = top.getItemMeta();
  1129. topm.setDisplayName(ChatColor.GREEN + "TOP 10");
  1130. topm.setLore(Arrays.asList(new String[] { "�bClick para ver el TOP 10" }));
  1131. top.setItemMeta(topm);
  1132. open.setItem(10, top);
  1133.  
  1134. ItemStack inf = new ItemStack(Material.PAPER, 1);
  1135. ItemMeta infm = inf.getItemMeta();
  1136. infm.setDisplayName(ChatColor.GREEN + "Clan " + clan);
  1137. infm.setLore(Arrays.asList(new String[] { "�bNombre: �a" + getName(clan), "�bPuntuacion: �4" + getPuntuacion(clan), "�bMiembros: �4" + getCantidad(clan) }));
  1138. inf.setItemMeta(infm);
  1139. open.setItem(16, inf);
  1140.  
  1141. open.setItem(4, head1);
  1142. Bukkit.getServer().getPlayer(sender.getName()).openInventory(open);
  1143. open = null;
  1144. }
  1145. }
  1146.  
  1147. public void openMiembros(Player p)
  1148. {
  1149. String nombre = p.getName();
  1150. String clan = getClan(nombre);
  1151. open = Bukkit.createInventory(p, 54, "�2Miembros de �5" + getClan(nombre));
  1152.  
  1153. int t = 0;
  1154. int cant = getCantidad(clan);
  1155. String[] Miembros = new String[cant];
  1156. int[] iMiembros = new int[cant];
  1157. try
  1158. {
  1159. rs = cmd.executeQuery("SELECT nick,rango FROM " + clan);
  1160. while (rs.next())
  1161. {
  1162. Miembros[t] = rs.getString(1);
  1163. iMiembros[t] = rs.getInt(2);
  1164. t++;
  1165. }
  1166. }
  1167. catch (Exception e)
  1168. {
  1169. e.printStackTrace();
  1170. }
  1171. for (int i = 0; i < t; i++)
  1172. {
  1173. int rang = iMiembros[i];
  1174. String rango = "";
  1175. if (rang == 1) {
  1176. rango = "�aRango: �6Miembro";
  1177. } else if (rang == 2) {
  1178. rango = "�aRango: �2Veterano";
  1179. } else if (rang == 3) {
  1180. rango = "�aRango: �bSub-Lider";
  1181. } else {
  1182. rango = "�aRango: �4Lider";
  1183. }
  1184. ItemStack head1 = new ItemStack(Material.SKULL_ITEM, 1, (short)3);
  1185. SkullMeta head1m = (SkullMeta)head1.getItemMeta();
  1186. head1m.setDisplayName(Miembros[i]);
  1187. head1m.setOwner(Miembros[i]);
  1188. head1m.setLore(Arrays.asList(new String[] { rango }));
  1189. head1.setItemMeta(head1m);
  1190. open.setItem(i, head1);
  1191. }
  1192. p.openInventory(open);
  1193. open = null;
  1194. }
  1195.  
  1196. public void openConfirmar(Player p)
  1197. {
  1198. String nombre = p.getName();
  1199. open = Bukkit.createInventory(p, 27, "�2Seguro que quieres borrar �5" + getClan(nombre) + "?");
  1200. ItemStack si = new ItemStack(Material.STAINED_CLAY, 1, DyeColor.GREEN.getData());
  1201. ItemStack no = new ItemStack(Material.STAINED_CLAY, 1, DyeColor.RED.getData());
  1202. ItemMeta sim = si.getItemMeta();
  1203. ItemMeta nom = no.getItemMeta();
  1204. sim.setDisplayName("�aSi");
  1205. nom.setDisplayName("�4No");
  1206. si.setItemMeta(sim);
  1207. no.setItemMeta(nom);
  1208. open.setItem(11, si);
  1209. open.setItem(15, no);
  1210. p.openInventory(open);
  1211. open = null;
  1212. }
  1213.  
  1214. public void openWhite(Player p)
  1215. {
  1216. String nombre = p.getName();
  1217. open = Bukkit.createInventory(p, 54, "�2Whitelist de �5" + getClan(nombre));
  1218. String[] mW = MiembrosT(getClan(nombre));
  1219. String[] mNW = MiembrosNT(getClan(nombre));
  1220. ItemStack Degradar = new ItemStack(Material.STAINED_GLASS_PANE, 1, DyeColor.LIME.getData());
  1221. ItemMeta dm = Degradar.getItemMeta();
  1222. dm.setDisplayName(ChatColor.GREEN + "Los que estan");
  1223. Degradar.setItemMeta(dm);
  1224. open.setItem(0, Degradar);
  1225. int i = 1;
  1226. for (int u = 0; u < mW.length; u++)
  1227. {
  1228. ItemStack head1 = new ItemStack(Material.SKULL_ITEM, 1, (short)3);
  1229. SkullMeta head1m = (SkullMeta)head1.getItemMeta();
  1230. head1m.setDisplayName(mW[u]);
  1231. head1m.setOwner(mW[u]);
  1232. head1m.setLore(Arrays.asList(new String[] { "Click para sacar de la whitelist" }));
  1233. head1.setItemMeta(head1m);
  1234. open.setItem(i, head1);
  1235. i++;
  1236. }
  1237. ItemStack NE = new ItemStack(Material.STAINED_GLASS_PANE, 1, DyeColor.RED.getData());
  1238. ItemMeta NEm = Degradar.getItemMeta();
  1239. NEm.setDisplayName(ChatColor.RED + "Los que no estan");
  1240. NE.setItemMeta(NEm);
  1241. open.setItem(i, NE);
  1242. i++;
  1243. for (int u = 0; u < mNW.length; u++)
  1244. {
  1245. ItemStack head1 = new ItemStack(Material.SKULL_ITEM, 1, (short)3);
  1246. SkullMeta head1m = (SkullMeta)head1.getItemMeta();
  1247. head1m.setDisplayName(mNW[u]);
  1248. head1m.setOwner(mNW[u]);
  1249. head1m.setLore(Arrays.asList(new String[] { "Click para meter en la whitelist" }));
  1250. head1.setItemMeta(head1m);
  1251. open.setItem(i, head1);
  1252. i++;
  1253. }
  1254. p.openInventory(open);
  1255. open = null;
  1256. }
  1257.  
  1258. public void openMiembro(Player p, String NMiembro)
  1259. {
  1260. String nombre = p.getName();
  1261. int rangm = getRango(NMiembro);
  1262. int rang = getRango(p.getName());
  1263. if (rang < 3)
  1264. {
  1265. p.closeInventory();
  1266. openMenuGeneral(p);
  1267. return;
  1268. }
  1269. open = Bukkit.createInventory(p, 27, "�2Opciones de " + NMiembro);
  1270. String rango = "";
  1271. if (rangm == 1) {
  1272. rango = "�aRango: �6Miembro";
  1273. } else if (rangm == 2) {
  1274. rango = "�aRango: �2Veterano";
  1275. } else if (rangm == 3) {
  1276. rango = "�aRango: �bSub-Lider";
  1277. } else {
  1278. rango = "�aRango: �4Lider";
  1279. }
  1280. String l;
  1281. if (isTitular(getClan(nombre), NMiembro))
  1282. {
  1283. String l = "�2Si";
  1284. ItemStack sip = new ItemStack(Material.STAINED_CLAY, 1, DyeColor.GREEN.getData());
  1285. ItemMeta sipm = sip.getItemMeta();
  1286. sipm.setDisplayName(ChatColor.GREEN + "Esta en la Whitelist");
  1287. sipm.setLore(Arrays.asList(new String[] { "�bClic para sacar a " + NMiembro + " de la WL " }));
  1288. sip.setItemMeta(sipm);
  1289. open.setItem(13, sip);
  1290. }
  1291. else
  1292. {
  1293. l = "�4No";
  1294. ItemStack nop = new ItemStack(Material.STAINED_CLAY, 1, DyeColor.RED.getData());
  1295. ItemMeta nopm = nop.getItemMeta();
  1296. nopm.setDisplayName(ChatColor.RED + "No esta en la Whitelist");
  1297. nopm.setLore(Arrays.asList(new String[] { "�bClic para meter a " + NMiembro + " en la WL " }));
  1298. nop.setItemMeta(nopm);
  1299. open.setItem(13, nop);
  1300. }
  1301. ItemStack head1 = new ItemStack(Material.SKULL_ITEM, 1, (short)3);
  1302. SkullMeta head1m = (SkullMeta)head1.getItemMeta();
  1303. head1m.setDisplayName(NMiembro);
  1304. head1m.setOwner(NMiembro);
  1305. head1m.setLore(Arrays.asList(new String[] { rango, "�bParticipa: " + l }));
  1306. head1.setItemMeta(head1m);
  1307. open.setItem(4, head1);
  1308. if ((rangm == 1) || ((rang == 9) && (rangm == 2)))
  1309. {
  1310. ItemStack as = new ItemStack(Material.BLAZE_ROD, 1);
  1311. ItemMeta asm = as.getItemMeta();
  1312. asm.setDisplayName(ChatColor.GREEN + "Ascender ");
  1313. asm.setLore(Arrays.asList(new String[] { "�bAsciende a " + NMiembro }));
  1314. as.setItemMeta(asm);
  1315. open.setItem(11, as);
  1316. }
  1317. if ((rangm == 2) || ((rang == 9) && ((rangm == 2) || (rangm == 3))))
  1318. {
  1319. ItemStack asi = new ItemStack(Material.STICK, 1);
  1320. ItemMeta asim = asi.getItemMeta();
  1321. asim.setDisplayName(ChatColor.RED + "Degradar ");
  1322. asim.setLore(Arrays.asList(new String[] { "�4Degrada a " + NMiembro }));
  1323. asi.setItemMeta(asim);
  1324. open.setItem(15, asi);
  1325. }
  1326. if ((rang == 9) && (rangm != 9))
  1327. {
  1328. ItemStack lider = new ItemStack(Material.DIAMOND_SWORD, 1, DyeColor.RED.getData());
  1329. ItemMeta liderm = lider.getItemMeta();
  1330. liderm.setDisplayName(ChatColor.RED + "Hacer Lider");
  1331. liderm.setLore(Arrays.asList(new String[] { "�bCede el liderazgo a " + NMiembro }));
  1332. lider.setItemMeta(liderm);
  1333. open.setItem(22, lider);
  1334. }
  1335. if ((rangm < 3) || ((rang == 9) && (rangm != 9)))
  1336. {
  1337. ItemStack fus = new ItemStack(Material.TRAP_DOOR);
  1338. ItemMeta fusm = fus.getItemMeta();
  1339. fusm.setDisplayName(ChatColor.RED + "Expulsar");
  1340. fusm.setLore(Arrays.asList(new String[] { "�bExpulsa a " + NMiembro }));
  1341. fus.setItemMeta(fusm);
  1342. open.setItem(26, fus);
  1343. }
  1344. ItemStack asi = new ItemStack(Material.ARROW, 1);
  1345. ItemMeta asim = asi.getItemMeta();
  1346. asim.setDisplayName(ChatColor.RED + "Atras");
  1347. asi.setItemMeta(asim);
  1348. open.setItem(18, asi);
  1349. p.openInventory(open);
  1350. }
  1351.  
  1352. public static void setScores(Player p)
  1353. {
  1354. String n = p.getName();
  1355. ScoreboardManager manager = Bukkit.getScoreboardManager();
  1356. Scoreboard board = manager.getNewScoreboard();
  1357. Objective objective = board.registerNewObjective("showhealth", "dummy");
  1358. objective.setDisplaySlot(DisplaySlot.SIDEBAR);
  1359. objective.setDisplayName(ChatColor.AQUA + ChatColor.BOLD + "MineWars");
  1360. if (isInWorld(n))
  1361. {
  1362. int rango = getRango(n);
  1363. String clan = getClan(n);
  1364. String RD;
  1365. String RD;
  1366. if (rango == 1)
  1367. {
  1368. RD = "�aRango: �6Miembro";
  1369. }
  1370. else
  1371. {
  1372. String RD;
  1373. if (rango == 2)
  1374. {
  1375. RD = "�aRango: �2Veterano";
  1376. }
  1377. else
  1378. {
  1379. String RD;
  1380. if (rango == 3) {
  1381. RD = "�aRango: �bSub-Lider";
  1382. } else {
  1383. RD = "�aRango: �4Lider";
  1384. }
  1385. }
  1386. }
  1387. Score CN = objective.getScore(ChatColor.GREEN + clan);
  1388. Score objetives = objective.getScore(ChatColor.GREEN + "Miembros: " + getCantidad(clan));
  1389. Score clan2 = objective.getScore(ChatColor.GREEN + RD);
  1390. Score Clan = objective.getScore(ChatColor.YELLOW + ChatColor.BOLD + "Clan:");
  1391. Score Spacer3 = objective.getScore(ChatColor.BLUE + " ");
  1392. objetives.setScore(1);
  1393. clan2.setScore(2);
  1394. CN.setScore(3);
  1395. Clan.setScore(4);
  1396. Spacer3.setScore(5);
  1397. }
  1398. else
  1399. {
  1400. Score NoClan = objective.getScore(ChatColor.YELLOW + "Sin Clan");
  1401. NoClan.setScore(5);
  1402. }
  1403. Score ips = objective.getScore(ChatColor.YELLOW + ChatColor.BOLD + "IP:");
  1404. Score ip2s = objective.getScore(ChatColor.GREEN + "us.minewars.pro");
  1405. Score miembrosECs = objective.getScore(ChatColor.YELLOW + ChatColor.BOLD + "TeamSpeak:");
  1406. Score tss = objective.getScore(ChatColor.GREEN + "ts.minewars.pro");
  1407. Score WEB = objective.getScore(ChatColor.YELLOW + ChatColor.BOLD + "WEB:");
  1408. Score WIP = objective.getScore(ChatColor.GREEN + "www.minewars.pro");
  1409. Score Spacer1 = objective.getScore(ChatColor.GREEN + " ");
  1410. Score Spacer2 = objective.getScore(ChatColor.RED + " ");
  1411. WIP.setScore(6);
  1412. WEB.setScore(7);
  1413. Spacer2.setScore(8);
  1414. tss.setScore(9);
  1415. miembrosECs.setScore(10);
  1416. Spacer1.setScore(11);
  1417. ip2s.setScore(12);
  1418. ips.setScore(13);
  1419.  
  1420. p.setScoreboard(board);
  1421. }
  1422.  
  1423. @EventHandler(priority=EventPriority.LOWEST)
  1424. public void OnPJ(PlayerJoinEvent e)
  1425. {
  1426. final Player p = e.getPlayer();
  1427. BukkitScheduler scheduler = getServer().getScheduler();
  1428. scheduler.scheduleSyncDelayedTask(this, new Runnable()
  1429. {
  1430. public void run()
  1431. {
  1432. Main.setScores(p);
  1433. }
  1434. }, 20L);
  1435. }
  1436.  
  1437. @EventHandler(priority=EventPriority.LOWEST)
  1438. public void OnMenuClicEvent(InventoryClickEvent e)
  1439. {
  1440. try
  1441. {
  1442. if ((e.getWhoClicked() instanceof Player))
  1443. {
  1444. Player p = (Player)e.getWhoClicked();
  1445. if ((!e.getInventory().getName().contains("entrar")) && (!e.getInventory().getName().contains("Clan")) && (!e.getInventory().getName().contains("Seguro")) && (!e.getInventory().getName().contains("Opciones")) && (!e.getInventory().getName().contains("Miembros")) && (!e.getInventory().getName().contains("Whitelist"))) {
  1446. return;
  1447. }
  1448. if (e.getCurrentItem() == null) {
  1449. return;
  1450. }
  1451. if ((e.getCurrentItem().getItemMeta().getDisplayName().contains("Si")) && (e.getInventory().getName().contains("entrar")))
  1452. {
  1453. Anadir(e.getInventory().getItem(22).getItemMeta().getDisplayName(), p.getName());
  1454. e.setCancelled(true);
  1455. p.closeInventory();
  1456. String c = getClan(p.getName());
  1457. for (Player pl : Bukkit.getOnlinePlayers()) {
  1458. if (isInClan(c, pl.getName()))
  1459. {
  1460. pl.sendMessage(ChatColor.GREEN + "El jugador " + ChatColor.DARK_PURPLE + p.getName() + ChatColor.GREEN + " ha entrado al clan");
  1461. setScores(pl);
  1462. }
  1463. }
  1464. return;
  1465. }
  1466. if ((e.getInventory().getName().contains("Whitelist")) && (e.getCurrentItem().getType() != Material.SKULL_ITEM))
  1467. {
  1468. openMenuGeneral((Player)e.getWhoClicked());
  1469. }
  1470. else if (e.getCurrentItem().getItemMeta().getDisplayName().contains("TOP"))
  1471. {
  1472. e.setCancelled(true);
  1473. openPosBoard((Player)e.getWhoClicked());
  1474. }
  1475. else
  1476. {
  1477. if ((e.getCurrentItem().getItemMeta().getDisplayName().contains("No")) && (e.getInventory().getName().contains("entrar")))
  1478. {
  1479. e.setCancelled(true);
  1480. p.closeInventory(); return;
  1481. }
  1482. Player pl;
  1483. if (e.getInventory().getName().contains("Seguro"))
  1484. {
  1485. if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Si"))
  1486. {
  1487. e.setCancelled(true);
  1488. p.closeInventory();
  1489. String c = getClan(p.getName());
  1490. String[] Viejos = Miembros(getClan(p.getName()));
  1491. borrarClan(getClan(p.getName()));
  1492. String[] arrayOfString1;
  1493. int j = (arrayOfString1 = Viejos).length;
  1494. for (int i = 0; i < j; i++)
  1495. {
  1496. String s = arrayOfString1[i];
  1497. pl = Bukkit.getServer().getPlayer(s);
  1498. if (pl != null)
  1499. {
  1500. pl.sendMessage(ChatColor.GREEN + "----------------------------------");
  1501. pl.sendMessage(ChatColor.GREEN + "Clan borrado... El nombre " + ChatColor.DARK_PURPLE + c + ChatColor.GREEN + " queda libre.");
  1502. pl.sendMessage(ChatColor.GREEN + "----------------------------------");
  1503. setScores(pl);
  1504. }
  1505. }
  1506. }
  1507. else
  1508. {
  1509. e.setCancelled(true);
  1510.  
  1511. openMenuGeneral(p);
  1512. }
  1513. return;
  1514. }
  1515. if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Miembros"))
  1516. {
  1517. e.setCancelled(true);
  1518.  
  1519. openMiembros(p);
  1520. }
  1521. else if ((e.getCurrentItem().getType() == Material.SKULL_ITEM) && (e.getInventory().getName().contains("Miembros")))
  1522. {
  1523. openMiembro(p, e.getCurrentItem().getItemMeta().getDisplayName());
  1524. }
  1525. else if ((e.getCurrentItem().getType() == Material.SKULL_ITEM) && (e.getInventory().getName().contains("Whitelist")))
  1526. {
  1527. String Clan = getClan(p.getName());
  1528. String m = e.getCurrentItem().getItemMeta().getDisplayName();
  1529. if (!isTitular(Clan, m))
  1530. {
  1531. if (getCantidadW(Clan) >= this.MW) {
  1532. p.sendMessage(ChatColor.RED + "No puedes meter mas jugadores en la WL, max " + this.MW);
  1533. } else {
  1534. setTitular(Clan, m);
  1535. }
  1536. }
  1537. else
  1538. {
  1539. String clan = getClan(p.getName());
  1540. unsetTitular(clan, m);
  1541. if (isInCW(clan).booleanValue()) {
  1542. bungeeKick(m);
  1543. }
  1544. }
  1545. openWhite(p);
  1546. }
  1547. else if ((e.getCurrentItem().getItemMeta().getDisplayName().contains("Whitelist")) && (e.getInventory().getName().contains("Clan")))
  1548. {
  1549. openWhite(p);
  1550. }
  1551. else
  1552. {
  1553. Object m;
  1554. if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Ascender"))
  1555. {
  1556. String args = p.getName();
  1557. String miembro = e.getInventory().getItem(4).getItemMeta().getDisplayName();
  1558. m = Bukkit.getServer().getPlayer(e.getInventory().getItem(4).getItemMeta().getDisplayName());
  1559. int rango = getRango(args);
  1560. int rm = getRango(miembro);
  1561. if (rango > 2)
  1562. {
  1563. if (rm < 3)
  1564. {
  1565. if (rm == 1)
  1566. {
  1567. p.sendMessage(ChatColor.AQUA + "Has ascendido a veterano a " + miembro);
  1568. setRango(miembro, 2);
  1569. if (m != null)
  1570. {
  1571. ((Player)m).sendMessage(ChatColor.AQUA + "Has sido ascendido a veterano");
  1572. setScores((Player)m);
  1573. }
  1574. }
  1575. else if (rm == 2)
  1576. {
  1577. p.sendMessage(ChatColor.AQUA + "Has ascendido a Sub-lider a " + miembro);
  1578. setRango(miembro, 3);
  1579. if (m != null)
  1580. {
  1581. ((Player)m).sendMessage(ChatColor.AQUA + "Has sido ascendido a Sub-lider");
  1582. setScores((Player)m);
  1583. }
  1584. }
  1585. }
  1586. else if (rango == 9) {
  1587. p.sendMessage(ChatColor.DARK_PURPLE + p.getName() + ChatColor.RED + " ya es sublider, si le quieres dejar a el de lider y quedarte como sublider, usa " + ChatColor.GREEN + "/lider " + miembro);
  1588. } else {
  1589. p.sendMessage(ChatColor.RED + "No puedes ascender a " + miembro);
  1590. }
  1591. }
  1592. else {
  1593. p.sendMessage(ChatColor.RED + "Necesitas ser lider o sublider para ascender miembros");
  1594. }
  1595. openMiembro(p, miembro);
  1596. }
  1597. else if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Borrar"))
  1598. {
  1599. e.setCancelled(true);
  1600.  
  1601. openConfirmar(p);
  1602. }
  1603. else if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Salir"))
  1604. {
  1605. String c = getClan(p.getName());
  1606. Eliminar(getClan(p.getName()), p.getName());
  1607. for (m = Bukkit.getOnlinePlayers().iterator(); ((Iterator)m).hasNext();)
  1608. {
  1609. Player pl = (Player)((Iterator)m).next();
  1610. if (isInClan(c, pl.getName()))
  1611. {
  1612. pl.sendMessage(ChatColor.DARK_PURPLE + p.getName() + ChatColor.GREEN + " ha salido del clan");
  1613. setScores(pl);
  1614. }
  1615. }
  1616. p.sendMessage(ChatColor.GREEN + "Has salido del CLan");
  1617. p.closeInventory();
  1618. setScores(p);
  1619. }
  1620. else if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Whitelist"))
  1621. {
  1622. String args = p.getName();
  1623. String miembro = e.getInventory().getItem(4).getItemMeta().getDisplayName();
  1624. String Clan = getClan(args);
  1625. if (e.getCurrentItem().getItemMeta().getDisplayName().contains("No"))
  1626. {
  1627. if (getCantidadW(Clan) >= this.MW)
  1628. {
  1629. p.sendMessage(ChatColor.RED + "No puedes meter mas jugadores en la WL, max " + this.MW);
  1630. }
  1631. else
  1632. {
  1633. setTitular(Clan, miembro);
  1634. p.sendMessage(ChatColor.GREEN + "Has metido a " + ChatColor.DARK_PURPLE + miembro + ChatColor.GREEN + " en la whitelist");
  1635. }
  1636. }
  1637. else
  1638. {
  1639. p.sendMessage(ChatColor.GREEN + " has sacado a " + ChatColor.DARK_PURPLE + miembro + ChatColor.GREEN + " de la whitelist");
  1640. unsetTitular(Clan, miembro);
  1641. if (isInCW(Clan).booleanValue()) {
  1642. bungeeKick(miembro);
  1643. }
  1644. }
  1645. openMiembro(p, miembro);
  1646. }
  1647. else if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Hacer"))
  1648. {
  1649. e.setCancelled(true);
  1650.  
  1651. String args = p.getName();
  1652. String miembro = e.getInventory().getItem(4).getItemMeta().getDisplayName();
  1653. Player m = Bukkit.getServer().getPlayer(miembro);
  1654. setRango(args, 3);
  1655. setRango(miembro, 9);
  1656. if (m != null)
  1657. {
  1658. m.sendMessage(ChatColor.GREEN + "Eres el nuevo lider de " + getClan(miembro));
  1659. setScores(m);
  1660. }
  1661. p.sendMessage(ChatColor.GREEN + "Ya no eres lider");
  1662. openMenuGeneral(p);
  1663. setScores(p);
  1664. }
  1665. else
  1666. {
  1667. Player m;
  1668. if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Degradar"))
  1669. {
  1670. String args = p.getName();
  1671. String miembro = e.getInventory().getItem(4).getItemMeta().getDisplayName();
  1672. int rm = getRango(miembro);
  1673. int rp = getRango(args);
  1674. m = Bukkit.getServer().getPlayer(miembro);
  1675. if ((rm < 3) || (rp == 9))
  1676. {
  1677. if (getRango(miembro) == 1)
  1678. {
  1679. p.sendMessage(ChatColor.AQUA + "Ese jugador es miembro, no lo puedes degradar mas");
  1680. }
  1681. else if (rm == 2)
  1682. {
  1683. p.sendMessage(ChatColor.AQUA + "has degradado a Miembro a " + miembro);
  1684. setRango(miembro, 1);
  1685. if (m != null)
  1686. {
  1687. m.sendMessage(ChatColor.AQUA + "Has sido degradado a Miembro");
  1688. setScores(m);
  1689. }
  1690. }
  1691. else if (rm == 3)
  1692. {
  1693. p.sendMessage(ChatColor.AQUA + "has degradado a Veterano a " + miembro);
  1694. setRango(miembro, 2);
  1695. if (m != null)
  1696. {
  1697. m.sendMessage(ChatColor.AQUA + "Has sido degradado a Veterano");
  1698. setScores(m);
  1699. }
  1700. }
  1701. else
  1702. {
  1703. p.sendMessage(ChatColor.YELLOW + "Degradarse a uno mismo, q quien se le ocurre...");
  1704. }
  1705. }
  1706. else if (rp == 9) {
  1707. p.sendMessage(ChatColor.RED + "No puedes degradar a otro sublider");
  1708. } else {
  1709. p.sendMessage(ChatColor.RED + "No puedes ascender a " + miembro);
  1710. }
  1711. openMiembro(p, miembro);
  1712. }
  1713. else if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Expulsar"))
  1714. {
  1715. String Clan = getClan(p.getName());
  1716. String m = e.getInventory().getItem(4).getItemMeta().getDisplayName();
  1717. Player mp = Bukkit.getServer().getPlayer(m);
  1718. if (isInCW(Clan).booleanValue()) {
  1719. bungeeKick(m);
  1720. }
  1721. Eliminar(Clan, m);
  1722.  
  1723. Player localPlayer2 = (pl = Miembros(getClan(p.getName()))).length;
  1724. for (Player localPlayer1 = 0; localPlayer1 < localPlayer2; localPlayer1++)
  1725. {
  1726. String s = pl[localPlayer1];
  1727. Player pl = Bukkit.getServer().getPlayer(s);
  1728. if (pl != null)
  1729. {
  1730. pl.sendMessage(ChatColor.DARK_PURPLE + m + ChatColor.GREEN + " ha sido expulsado del clan.");
  1731. setScores(pl);
  1732. }
  1733. }
  1734. if (mp != null)
  1735. {
  1736. setScores(mp);
  1737. mp.sendMessage(ChatColor.RED + "Has sido expulsado del clan");
  1738. }
  1739. openMenuGeneral(p);
  1740. }
  1741. else if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Atras"))
  1742. {
  1743. openMenuGeneral((Player)e.getWhoClicked());
  1744. }
  1745. else if (e.getInventory().getName().contains("crear"))
  1746. {
  1747. if (e.getCurrentItem().getItemMeta().getDisplayName().contains("Si"))
  1748. {
  1749. e.setCancelled(true);
  1750. construxthor((Player)e.getWhoClicked());
  1751. }
  1752. else if (e.getCurrentItem().getItemMeta().getDisplayName().contains("No"))
  1753. {
  1754. e.setCancelled(true);
  1755. p.closeInventory();
  1756. return;
  1757. }
  1758. }
  1759. }
  1760. }
  1761. }
  1762. e.setCancelled(true);
  1763. }
  1764. }
  1765. catch (Exception localException) {}
  1766. }
  1767.  
  1768. public static Main getInstance()
  1769. {
  1770. return instance;
  1771. }
  1772. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement