Advertisement
Guest User

Untitled

a guest
Apr 20th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 27.10 KB | None | 0 0
  1. package me.skulldev;
  2.  
  3. import com.sun.xml.internal.bind.v2.model.annotation.RuntimeAnnotationReader;
  4. import me.skulldev.commands.EventCommand;
  5. import me.skulldev.events.DeathEvent;
  6. import me.skulldev.events.InventoryInteractionEvents;
  7. import me.skulldev.events.JoinLeaveEvents;
  8. import org.bukkit.*;
  9. import org.bukkit.configuration.InvalidConfigurationException;
  10. import org.bukkit.configuration.file.FileConfiguration;
  11. import org.bukkit.configuration.file.YamlConfiguration;
  12. import org.bukkit.entity.Item;
  13. import org.bukkit.entity.Player;
  14. import org.bukkit.event.EventHandler;
  15. import org.bukkit.inventory.Inventory;
  16. import org.bukkit.inventory.ItemStack;
  17. import org.bukkit.inventory.meta.ItemMeta;
  18. import org.bukkit.plugin.PluginManager;
  19. import org.bukkit.plugin.java.JavaPlugin;
  20.  
  21. import java.io.File;
  22. import java.io.IOException;
  23. import java.util.*;
  24.  
  25. public class Main extends JavaPlugin {
  26.  
  27. private File configFile;
  28. private FileConfiguration config;
  29. private File messagesFile;
  30. private FileConfiguration messagesConfig;
  31. private File sumoFile;
  32. private FileConfiguration sumoConfig;
  33.  
  34. private boolean sumoActive;
  35. public boolean sumoInGame;
  36.  
  37. public List inEvent = new ArrayList<UUID>();
  38. public List inSumoFight = new ArrayList<UUID>();
  39. public int eventSize = inEvent.size();
  40.  
  41. private int counter;
  42. private int counter2;
  43.  
  44. @Override
  45. public void onEnable() {
  46. registerCommands();
  47. registerEvents();
  48.  
  49. //Configs
  50. createConfig();
  51. createMessagesConfig();
  52. createSumoConfig();
  53. saveConfig();
  54. saveMessagesConfig();
  55. saveSumoConfig();
  56. }
  57.  
  58. @Override
  59. public void onDisable() {
  60. inEvent.clear();
  61. inSumoFight.clear();
  62. Bukkit.getServer().getScheduler().cancelTasks(this);
  63. }
  64.  
  65. public void registerCommands() {
  66. this.getCommand("event").setExecutor(new EventCommand(this));
  67. }
  68.  
  69. public void registerEvents() {
  70. PluginManager pm = getServer().getPluginManager();
  71. pm.registerEvents(new InventoryInteractionEvents(this), this);
  72. pm.registerEvents(new JoinLeaveEvents(this), this);
  73. pm.registerEvents(new DeathEvent(this), this);
  74. }
  75.  
  76. public String translateColors(String msg) {
  77. return ChatColor.translateAlternateColorCodes('&', msg);
  78. }
  79.  
  80. public void openStartInventory(Player player) {
  81. Inventory inv = Bukkit.createInventory(null, 27, translateColors(getStartInventoryTitle()));
  82.  
  83. ItemStack sumoItem = new ItemStack(Material.BAKED_POTATO);
  84. ItemMeta sumItemM = sumoItem.getItemMeta();
  85. sumItemM.setDisplayName(translateColors(getSumoTitle()));
  86.  
  87. List lore = new ArrayList<String>();
  88. lore.add(translateColors(getLoresline1()).replaceAll("<Event>", translateColors(getSumoTitle())));
  89.  
  90. sumItemM.setLore(lore);
  91. sumoItem.setItemMeta(sumItemM);
  92.  
  93. inv.setItem(13, sumoItem);
  94. player.openInventory(inv);
  95. }
  96.  
  97. public void startSumoEvent(Player player) {
  98. if(!getSumoActive()) {
  99. if(areSpawnPointsSet()) {
  100. player.closeInventory();
  101. startSumoCountdown();
  102. setSumoActive(true);
  103. } else {
  104. player.sendMessage(translateColors(getPrefix() + getSetSpawnPointsError().replaceAll("<Event>", getSumoTitle())));
  105. player.closeInventory();
  106. }
  107. }
  108. }
  109.  
  110. public void startSumoCountdown() {
  111. setCountDown(getSumoCountDownTime());
  112. int id = Bukkit.getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {
  113. @Override
  114. public void run() {
  115. Bukkit.getServer().broadcastMessage(translateColors(getSumoBroadcastMessage(1).replaceAll("<Event>", getSumoTitle()).replaceAll("<Time>", String.valueOf(counter))));
  116. Bukkit.getServer().broadcastMessage(translateColors(getSumoBroadcastMessage(2).replaceAll("<Command>", "/event join")));
  117. Bukkit.getServer().broadcastMessage(translateColors(getSumoBroadcastMessage(3).replaceAll("<Players>", String.valueOf(getAmountOfEventPlayers())).replaceAll("<Max>", String.valueOf(getMaxSumoPlayers()))));
  118. setCountDown(getCountDown() - 10);
  119. }
  120. }, 0, 200);
  121. Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
  122. @Override
  123. public void run() {
  124. if(getAmountOfEventPlayers() < getMinSumoPlayers()) {
  125. Bukkit.getServer().broadcastMessage(translateColors(getNotEnoughPlayersMessage().replaceAll("<Event>", getSumoTitle())));
  126. Bukkit.getServer().getScheduler().cancelTask(id);
  127. } else {
  128. Bukkit.getServer().broadcastMessage(translateColors(getStartMessage().replaceAll("<Event>", getSumoTitle())));
  129. Bukkit.getServer().getScheduler().cancelTask(id);
  130. startSumo();
  131. }
  132. }
  133. }, getSumoCountDownTime()*20);
  134. }
  135.  
  136. public void startSumo() {
  137. setSumoInGame(true);
  138. int i = 0;
  139. while (i < inEvent.size()) {
  140. if(isUUIDOnline((UUID) inEvent.get(i))) {
  141. UUID target = (UUID) inEvent.get(i);
  142. sumoTeleportToSpectator(getPlayerByUuid(target));
  143. } else {
  144. inEvent.remove(i);
  145. }
  146. i++;
  147. }
  148. sumoArenaFight();
  149. }
  150.  
  151. public void endSumo(Player player) {
  152.  
  153. setSumoInGame(false);
  154. setSumoActive(false);
  155. }
  156.  
  157. public void sumoArenaFight() {
  158. setCountDown2(getCountDownTimeBetweenSumoFights());
  159. if(getAmountOfEventPlayers() >=2) {
  160. int id = Bukkit.getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {
  161. @Override
  162. public void run() {
  163. Bukkit.getServer().broadcastMessage(translateColors(getBetweenFightsBroadcastMessage().replaceAll("<Time>", String.valueOf(counter2))));
  164. setCountDown2(getCountDown2() - 1);
  165. }
  166. }, 0, 20);
  167. Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
  168. @Override
  169. public void run() {
  170. List players = getRandomPlayers();
  171. System.out.println(players.get(0));
  172. System.out.println(players.get(1));
  173. Player player1 = Bukkit.getServer().getPlayer(players.get(0).toString());
  174. Player player2 = Bukkit.getServer().getPlayer(players.get(1).toString());
  175. setUpFight(player1, player2);
  176. Bukkit.getServer().broadcastMessage(translateColors(getSumoFightStartMessage().replaceAll("<Player1>", player1.getName()).replaceAll("<Player2>", player2.getName())));
  177. Bukkit.getServer().getScheduler().cancelTask(id);
  178. }
  179. }, 20*getCountDownTimeBetweenSumoFights());
  180. } else {
  181. Player player = Bukkit.getServer().getPlayer(inEvent.get(1).toString());
  182. endSumo(player);
  183. }
  184. }
  185.  
  186. public void setUpFight(Player player1, Player player2) {
  187. sumoTeleportToArenaPos1(player1);
  188. sumoTeleportToArenaPos2(player2);
  189. inSumoFight.add(player1.getUniqueId());
  190. inSumoFight.add(player2.getUniqueId());
  191. }
  192.  
  193. public void sumoTeleportToSpectator(Player player) {
  194. player.teleport(getSpawnLocation("sumo", "spectator"));
  195. }
  196.  
  197. public void sumoTeleportToArenaPos1(Player player) {
  198. player.teleport(getSpawnLocation("sumo", "arenaPos1"));
  199.  
  200. }
  201.  
  202. public void sumoTeleportToArenaPos2(Player player) {
  203. player.teleport(getSpawnLocation("sumo", "arenaPos2"));
  204. }
  205.  
  206. private boolean areSpawnPointsSet() {
  207.  
  208. if(getSumoConfig().getString("spectatorSpawn.x")==null || getSumoConfig().getString("spectatorSpawn.y")==null || getSumoConfig().getString("spectatorSpawn.z")==null || getSumoConfig().getString("spectatorSpawn.yaw")==null || getSumoConfig().getString("spectatorSpawn.world")==null || getSumoConfig().getString("spectatorSpawn.pitch")==null) {
  209. return false;
  210. } else if(getSumoConfig().getString("arenaPos1Spawn.x")==null || getSumoConfig().getString("arenaPos1Spawn.y")==null || getSumoConfig().getString("arenaPos1Spawn.z")==null || getSumoConfig().getString("arenaPos1Spawn.world")==null || getSumoConfig().getString("arenaPos1Spawn.yaw")==null || getSumoConfig().getString("arenaPos1Spawn.pitch")==null) {
  211. return false;
  212. } else if(getSumoConfig().getString("arenaPos2Spawn.x")==null || getSumoConfig().getString("arenaPos2Spawn.y")==null || getSumoConfig().getString("arenaPos2Spawn.z")==null || getSumoConfig().getString("arenaPos2Spawn.world")==null || getSumoConfig().getString("arenaPos2Spawn.yaw")==null || getSumoConfig().getString("arenaPos2Spawn.pitch")==null) {
  213. return false;
  214. }
  215.  
  216. return true;
  217. }
  218.  
  219. /**
  220. * Configs
  221. */
  222. public FileConfiguration getConfig() {
  223. return this.config;
  224. }
  225.  
  226. public FileConfiguration getMessagesConfig() {
  227. return this.messagesConfig;
  228. }
  229.  
  230. public FileConfiguration getSumoConfig() {
  231. return this.sumoConfig;
  232. }
  233.  
  234. private void createConfig() {
  235. configFile = new File(getDataFolder(), "config.yml");
  236. if (!configFile.exists()) {
  237. configFile.getParentFile().mkdirs();
  238. saveResource("config.yml", false);
  239. }
  240.  
  241. config= new YamlConfiguration();
  242. try {
  243. config.load(configFile);
  244. } catch (IOException | InvalidConfigurationException e) {
  245. e.printStackTrace();
  246. }
  247. }
  248.  
  249. private void createMessagesConfig() {
  250. messagesFile = new File(getDataFolder(), "messages.yml");
  251. if (!messagesFile.exists()) {
  252. messagesFile.getParentFile().mkdirs();
  253. saveResource("messages.yml", false);
  254. }
  255.  
  256. messagesConfig= new YamlConfiguration();
  257. try {
  258. messagesConfig.load(messagesFile);
  259. } catch (IOException | InvalidConfigurationException e) {
  260. e.printStackTrace();
  261. }
  262. }
  263.  
  264. private void createSumoConfig() {
  265. sumoFile = new File(getDataFolder(), "sumo.yml");
  266. if (!sumoFile.exists()) {
  267. sumoFile.getParentFile().mkdirs();
  268. saveResource("sumo.yml", false);
  269. }
  270.  
  271. sumoConfig= new YamlConfiguration();
  272. try {
  273. sumoConfig.load(sumoFile);
  274. } catch (IOException | InvalidConfigurationException e) {
  275. e.printStackTrace();
  276. }
  277. }
  278.  
  279. public void saveConfig() {
  280. try {
  281. config.save(configFile);
  282. } catch(IOException e) {
  283. e.printStackTrace();
  284. }
  285. }
  286.  
  287. public void saveMessagesConfig() {
  288. try {
  289. messagesConfig.save(messagesFile);
  290. } catch(IOException e) {
  291. e.printStackTrace();
  292. }
  293. }
  294.  
  295. public void saveSumoConfig() {
  296. try {
  297. sumoConfig.save(sumoFile);
  298. } catch(IOException e) {
  299. e.printStackTrace();
  300. }
  301. }
  302.  
  303. /**
  304. * Strings
  305. */
  306. public String getUsePermission() {
  307. return "events.use";
  308. }
  309. public String getUseSumoPermission() {
  310. return "events.use.sumo";
  311. }
  312. public String getSetSpawnPermission() {
  313. return "events.set.spawn";
  314. }
  315. public String getPrefix() {
  316. return this.getConfig().getString("prefix");
  317. }
  318. public String getServerName() {
  319. return this.getConfig().getString("serverName");
  320. }
  321. public String getNoPermission() {
  322. return this.getMessagesConfig().getString("noPermission");
  323. }
  324. public String getInvalidArgs() {
  325. return this.getMessagesConfig().getString("invalidArgs");
  326. }
  327. public String getStartInventoryTitle() {
  328. return this.getConfig().getString("startInventoryTitle");
  329. }
  330. public String getLoresline1() {
  331. return this.getMessagesConfig().getString("lores.line1");
  332. }
  333. public String getSumoTitle() {
  334. return this.getSumoConfig().getString("title");
  335. }
  336. public String getSumoBroadcastMessage(int i) {
  337. if(i==1) {
  338. return this.getMessagesConfig().getString("broadcastMessage.line1");
  339. } else if(i==2) {
  340. return this.getMessagesConfig().getString("broadcastMessage.line2");
  341. } else if(i==3) {
  342. return this.getMessagesConfig().getString("broadcastMessage.line3");
  343. }
  344. return null;
  345. }
  346. public String getStartMessage() {
  347. return this.getMessagesConfig().getString("eventStarting");
  348. }
  349. public int getCountDown() {
  350. return counter;
  351. }
  352. public void setCountDown(int i) {
  353. this.counter = i;
  354. }
  355. public int getCountDown2() {
  356. return counter2;
  357. }
  358. public void setCountDown2(int i) {
  359. this.counter2 = i;
  360. }
  361. public int getSumoCountDownTime() {
  362. return this.getSumoConfig().getInt("countdown");
  363. }
  364. public int getCountDownTimeBetweenSumoFights() {
  365. return this.getSumoConfig().getInt("betweenFightsCountdown");
  366. }
  367. public boolean getSumoActive() {
  368. return sumoActive;
  369. }
  370. public void setSumoActive(boolean bool) {
  371. this.sumoActive = bool;
  372. }
  373. public boolean getSumoInGame() {
  374. return sumoInGame;
  375. }
  376. public void setSumoInGame(boolean bool) {
  377. this.sumoInGame = bool;
  378. }
  379. public String getSetSpawnPointsError() {
  380. return this.getMessagesConfig().getString("setSpawnPointsError");
  381. }
  382. public String getHelpMessages(int i) {
  383. if(i == 1) {
  384. return this.getMessagesConfig().getString("helpMessages.line1");
  385. } else if(i == 2) {
  386. return this.getMessagesConfig().getString("helpMessages.line2");
  387. } else if(i == 3) {
  388. return this.getMessagesConfig().getString("helpMessages.line3");
  389. }
  390. return null;
  391. }
  392. public String getSetSpawnMessages(int i) {
  393. if(i == 1) {
  394. return this.getMessagesConfig().getString("setSpawnMessages.line1");
  395. } else if(i == 2) {
  396. return this.getMessagesConfig().getString("setSpawnMessages.line2");
  397. } else if(i == 3) {
  398. return this.getMessagesConfig().getString("setSpawnMessages.line3");
  399. } else if(i == 4) {
  400. return this.getMessagesConfig().getString("setSpawnMessages.line4");
  401. } else if(i == 5) {
  402. return this.getMessagesConfig().getString("setSpawnMessages.line5");
  403. }
  404. return null;
  405. }
  406.  
  407. public Player getPlayerByUuid(UUID uuid) {
  408. for(Player p : getServer().getOnlinePlayers()) {
  409. if(p.getUniqueId().equals(uuid)) {
  410. return p;
  411. }
  412. }
  413. return null;
  414. }
  415. public boolean isUUIDOnline(UUID uuid) {
  416. for(Player p : getServer().getOnlinePlayers()) {
  417. if(p.getUniqueId().equals(uuid)) {
  418. return true;
  419. }
  420. }
  421. return false;
  422. }
  423.  
  424. public void setSpawnLocation(String event, String id, Location loc, Player player) {
  425. if(event.equalsIgnoreCase("sumo")) {
  426. if(id.equalsIgnoreCase("spectator")) {
  427. this.getSumoConfig().set("spectatorSpawn.x", loc.getX());
  428. this.getSumoConfig().set("spectatorSpawn.y", loc.getY());
  429. this.getSumoConfig().set("spectatorSpawn.z", loc.getZ());
  430. this.getSumoConfig().set("spectatorSpawn.world", loc.getWorld().getName());
  431. this.getSumoConfig().set("spectatorSpawn.pitch", loc.getPitch());
  432. this.getSumoConfig().set("spectatorSpawn.yaw", loc.getYaw());
  433. player.sendMessage(translateColors(getSetSpawnMessages(1).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "spectator").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  434. player.sendMessage(translateColors(getSetSpawnMessages(2).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "spectator").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  435. player.sendMessage(translateColors(getSetSpawnMessages(3).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "spectator").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  436. player.sendMessage(translateColors(getSetSpawnMessages(4).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "spectator").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  437. player.sendMessage(translateColors(getSetSpawnMessages(5).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "spectator").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  438. this.saveSumoConfig();
  439. } else if(id.equalsIgnoreCase("arenapos1")) {
  440. this.getSumoConfig().set("arenaPos1Spawn.x", loc.getX());
  441. this.getSumoConfig().set("arenaPos1Spawn.y", loc.getY());
  442. this.getSumoConfig().set("arenaPos1Spawn.z", loc.getZ());
  443. this.getSumoConfig().set("arenaPos1Spawn.world", loc.getWorld().getName());
  444. this.getSumoConfig().set("arenaPos1Spawn.pitch", loc.getPitch());
  445. this.getSumoConfig().set("arenaPos1Spawn.yaw", loc.getYaw());
  446. player.sendMessage(translateColors(getSetSpawnMessages(1).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "arenapos1").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  447. player.sendMessage(translateColors(getSetSpawnMessages(2).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "arenapos1").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  448. player.sendMessage(translateColors(getSetSpawnMessages(3).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "arenapos1").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  449. player.sendMessage(translateColors(getSetSpawnMessages(4).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "arenapos1").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  450. player.sendMessage(translateColors(getSetSpawnMessages(5).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "arenapos1").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  451. this.saveSumoConfig();
  452. } else if(id.equalsIgnoreCase("arenapos2")) {
  453. this.getSumoConfig().set("arenaPos2Spawn.x", loc.getX());
  454. this.getSumoConfig().set("arenaPos2Spawn.y", loc.getY());
  455. this.getSumoConfig().set("arenaPos2Spawn.z", loc.getZ());
  456. this.getSumoConfig().set("arenaPos2Spawn.world", loc.getWorld().getName());
  457. this.getSumoConfig().set("arenaPos2Spawn.pitch", loc.getPitch());
  458. this.getSumoConfig().set("arenaPos2Spawn.yaw", loc.getYaw());
  459. player.sendMessage(translateColors(getSetSpawnMessages(1).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "arenapos2").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  460. player.sendMessage(translateColors(getSetSpawnMessages(2).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "arenapos2").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  461. player.sendMessage(translateColors(getSetSpawnMessages(3).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "arenapos2").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  462. player.sendMessage(translateColors(getSetSpawnMessages(4).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "arenapos2").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  463. player.sendMessage(translateColors(getSetSpawnMessages(5).replaceAll("<Event>", getSumoTitle()).replaceAll("<ID>", "arenapos2").replaceAll("<X>", String.valueOf(loc.getX())).replaceAll("<Y>", String.valueOf(loc.getY())).replaceAll("<Z>", String.valueOf(loc.getZ())).replaceAll("<WORLD>", String.valueOf(loc.getWorld()))));
  464. this.saveSumoConfig();
  465. }
  466. }
  467. }
  468.  
  469. public Location getSpawnLocation(String event, String id) {
  470. if(event.equalsIgnoreCase("sumo")) {
  471. if(id.equalsIgnoreCase("spectator")) {
  472. double x = Double.valueOf(this.getSumoConfig().getString("spectatorSpawn.x"));
  473. double y = Double.valueOf(this.getSumoConfig().getString("spectatorSpawn.y"));
  474. double z = Double.valueOf(this.getSumoConfig().getString("spectatorSpawn.z"));
  475. String world = this.getSumoConfig().getString("spectatorSpawn.world");
  476. World w = Bukkit.getServer().getWorld(world);
  477. float yaw = Float.valueOf(this.getSumoConfig().getString("spectatorSpawn.yaw"));
  478. float pitch = Float.valueOf(this.getSumoConfig().getString("spectatorSpawn.pitch"));
  479. Location loc = new Location(w,x,y,z,yaw,pitch);
  480. return loc;
  481. } else if(id.equalsIgnoreCase("arenapos1")) {
  482. double x = Double.valueOf(this.getSumoConfig().getString("arenaPos1Spawn.x"));
  483. double y = Double.valueOf(this.getSumoConfig().getString("arenaPos1Spawn.y"));
  484. double z = Double.valueOf(this.getSumoConfig().getString("arenaPos1Spawn.z"));
  485. String world = this.getSumoConfig().getString("arenaPos1Spawn.world");
  486. World w = Bukkit.getServer().getWorld(world);
  487. float yaw = Float.valueOf(this.getSumoConfig().getString("arenaPos1Spawn.yaw"));
  488. float pitch = Float.valueOf(this.getSumoConfig().getString("arenaPos1Spawn.pitch"));
  489. Location loc = new Location(w,x,y,z,yaw,pitch);
  490. return loc;
  491. } else if(id.equalsIgnoreCase("arenapos2")) {
  492. double x = Double.valueOf(this.getSumoConfig().getString("arenaPos2Spawn.x"));
  493. double y = Double.valueOf(this.getSumoConfig().getString("arenaPos2Spawn.y"));
  494. double z = Double.valueOf(this.getSumoConfig().getString("arenaPos2Spawn.z"));
  495. String world = this.getSumoConfig().getString("arenaPos2Spawn.world");
  496. World w = Bukkit.getServer().getWorld(world);
  497. float yaw = Float.valueOf(this.getSumoConfig().getString("arenaPos2Spawn.yaw"));
  498. float pitch = Float.valueOf(this.getSumoConfig().getString("arenaPos2Spawn.pitch"));
  499. Location loc = new Location(w,x,y,z,yaw,pitch);
  500. return loc;
  501. }
  502. return null;
  503. }
  504. return null;
  505. }
  506. public Integer getMinSumoPlayers() {
  507. return this.getSumoConfig().getInt("minPlayers");
  508. }
  509. public Integer getMaxSumoPlayers() {
  510. return this.getSumoConfig().getInt("maxPlayers");
  511. }
  512. public String getNotEnoughPlayersMessage() {
  513. return this.getMessagesConfig().getString("notEnoughPlayersMessage");
  514. }
  515. public String getEventFullMessage() {
  516. return this.getMessagesConfig().getString("eventFullMessage");
  517. }
  518. public String getEventLeaveMessage() {
  519. return this.getMessagesConfig().getString("leaveEventMessage");
  520. }
  521. public String getEventJoinMessage() {
  522. return this.getMessagesConfig().getString("joinEventMessage");
  523. }
  524. public String getAlreadyInEventMessage() {
  525. return this.getMessagesConfig().getString("alreadyInEventMessage");
  526. }
  527. public String getNotInEventMessage() {
  528. return this.getMessagesConfig().getString("notInEventMessage");
  529. }
  530. public String getNoActiveEventMessage() {
  531. return this.getMessagesConfig().getString("noActiveEventMessage");
  532. }
  533. public String getEventAlreadyStartedMessage() {
  534. return this.getMessagesConfig().getString("eventAlreadyStartedMessage");
  535. }
  536. public Integer getAmountOfEventPlayers() {
  537. return inEvent.size();
  538. }
  539.  
  540. public List<UUID> getRandomPlayers() {
  541. /**Random random = new Random();
  542. Player randomPlayer = Bukkit.getServer().getPlayer(inEvent.get(random.nextInt(getAmountOfEventPlayers())).toString());
  543.  
  544. Player randomPlayer2 = Bukkit.getServer().getPlayer(inEvent.get(random.nextInt(getAmountOfEventPlayers())).toString());
  545.  
  546. while ((randomPlayer2 == randomPlayer) && (getAmountOfEventPlayers() > 1)) {
  547. randomPlayer2 = Bukkit.getPlayer(inEvent.get(random.nextInt(getAmountOfEventPlayers())).toString());
  548. }**/
  549. Collections.shuffle(inEvent);
  550. String p1 = inEvent.remove(0).toString();
  551. String p2 = inEvent.remove(0).toString();
  552. Player randomPlayer = Bukkit.getServer().getPlayer(p1);
  553. Player randomPlayer2 = Bukkit.getServer().getPlayer(p2);
  554. List list = new ArrayList<UUID>();
  555. list.add(randomPlayer.getUniqueId());
  556. list.add(randomPlayer2.getUniqueId());
  557. return list;
  558. }
  559.  
  560. public String getBetweenFightsBroadcastMessage() {
  561. return this.getSumoConfig().getString("betweenFightsBroadcastMessage");
  562. }
  563. public String getSumoFightStartMessage() {
  564. return this.getSumoConfig().getString("startFightMessage");
  565. }
  566. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement