Guest User

Untitled

a guest
Mar 5th, 2016
42
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 22.74 KB | None | 0 0
  1. package me.SwiftCoding.Lobby;
  2.  
  3. import java.io.ByteArrayOutputStream;
  4. import java.io.DataOutputStream;
  5. import java.io.IOException;
  6. import java.util.ArrayList;
  7. import java.util.HashMap;
  8.  
  9. import org.bukkit.Bukkit;
  10. import org.bukkit.Effect;
  11. import org.bukkit.GameMode;
  12. import org.bukkit.Location;
  13. import org.bukkit.Material;
  14. import org.bukkit.Sound;
  15. import org.bukkit.command.Command;
  16. import org.bukkit.command.CommandSender;
  17. import org.bukkit.enchantments.Enchantment;
  18. import org.bukkit.entity.Arrow;
  19. import org.bukkit.entity.Player;
  20. import org.bukkit.event.EventHandler;
  21. import org.bukkit.event.Listener;
  22. import org.bukkit.event.block.Action;
  23. import org.bukkit.event.entity.EntityDamageEvent;
  24. import org.bukkit.event.entity.PlayerDeathEvent;
  25. import org.bukkit.event.entity.ProjectileHitEvent;
  26. import org.bukkit.event.inventory.InventoryClickEvent;
  27. import org.bukkit.event.inventory.InventoryInteractEvent;
  28. import org.bukkit.event.player.AsyncPlayerChatEvent;
  29. import org.bukkit.event.player.PlayerChangedWorldEvent;
  30. import org.bukkit.event.player.PlayerDropItemEvent;
  31. import org.bukkit.event.player.PlayerInteractEvent;
  32. import org.bukkit.event.player.PlayerJoinEvent;
  33. import org.bukkit.event.player.PlayerMoveEvent;
  34. import org.bukkit.event.player.PlayerQuitEvent;
  35. import org.bukkit.event.player.PlayerRespawnEvent;
  36. import org.bukkit.event.player.PlayerToggleFlightEvent;
  37. import org.bukkit.inventory.ItemStack;
  38. import org.bukkit.inventory.meta.ItemMeta;
  39. import org.bukkit.plugin.java.JavaPlugin;
  40. import org.bukkit.potion.PotionEffect;
  41. import org.bukkit.potion.PotionEffectType;
  42.  
  43. import net.md_5.bungee.api.ChatColor;
  44. import ru.tehkode.permissions.PermissionUser;
  45. import ru.tehkode.permissions.bukkit.PermissionsEx;
  46.  
  47. public class SwiftLobby extends JavaPlugin implements Listener {
  48.  
  49. public static ArrayList<String> doublejump = new ArrayList<String>();
  50. public static ArrayList<String> speed = new ArrayList<String>();
  51. public static ArrayList<String> vanish = new ArrayList<String>();
  52. public static ArrayList<Player> toggled = new ArrayList<Player>();
  53. public static ArrayList<Player> clockspam = new ArrayList<Player>();
  54. public static ArrayList<Player> speedspam = new ArrayList<Player>();
  55. int count = 0;
  56.  
  57. private HashMap<Player, ItemStack[]> inventories;
  58. private HashMap<Player, ItemStack[]> armors;
  59.  
  60. public static SwiftLobby instance;
  61.  
  62. public void onEnable(){
  63. instance = this;
  64. getServer().getPluginManager().registerEvents(this, this);
  65. saveDefaultConfig();
  66.  
  67. for (Player p : Bukkit.getOnlinePlayers()){
  68. if (speed.contains(p.getName())){
  69. speed.remove(p.getName());
  70. } if (vanish.contains(p.getName())){
  71. vanish.remove(p.getName());
  72. }
  73. }
  74. Bukkit.getServer().getMessenger().registerOutgoingPluginChannel(this, "BungeeCord");
  75. }
  76.  
  77. public void giveInventory(Player p){
  78. ItemStack bow = new ItemStack(Material.BOW, 1);
  79. bow.addEnchantment(Enchantment.ARROW_INFINITE, 1);
  80. bow.addUnsafeEnchantment(Enchantment.DURABILITY, 10000);
  81. ItemStack arrow = new ItemStack(Material.ARROW, 1);
  82. ItemMeta bowmeta = bow.getItemMeta();
  83. ItemMeta arrowmeta = arrow.getItemMeta();
  84. bowmeta.setDisplayName("&cTeleport Bow".replace("&", "§"));
  85. arrowmeta.setDisplayName("&cTeleport Fuel".replace("&", "§"));
  86. bow.setItemMeta(bowmeta);
  87. arrow.setItemMeta(arrowmeta);
  88. p.getInventory().setItem(3, bow);
  89. p.getInventory().setItem(9, arrow);
  90.  
  91. ItemStack Sugar = new ItemStack(Material.SUGAR);
  92. ItemMeta sugarmeta = Sugar.getItemMeta();
  93. sugarmeta.setDisplayName("&cSpeed Boost".replace("&", "§"));
  94. Sugar.setItemMeta(sugarmeta);
  95. Sugar.addUnsafeEnchantment(Enchantment.DURABILITY, 10);
  96. p.getInventory().setItem(5, Sugar);
  97.  
  98. ItemStack Compass = new ItemStack(Material.COMPASS);
  99. ItemMeta compassmeta = Compass.getItemMeta();
  100. compassmeta.setDisplayName("&cServer Selector".replace("&", "§"));
  101. Compass.setItemMeta(compassmeta);
  102. p.getInventory().setItem(0, Compass);
  103.  
  104. ItemStack vanity = new ItemStack(Material.CHEST);
  105. ItemMeta vanitymeta = vanity.getItemMeta();
  106. vanitymeta.setDisplayName("&cVanity".replace("&", "§"));
  107. vanity.setItemMeta(vanitymeta);
  108. p.getInventory().setItem(1, vanity);
  109.  
  110. ItemStack clock = new ItemStack(Material.WATCH);
  111. ItemMeta clockmeta = clock.getItemMeta();
  112. clockmeta.setDisplayName("&cVanisher &7(&4OFF&7)".replace("&", "§"));
  113. clock.setItemMeta(clockmeta);
  114. p.getInventory().setItem(4, clock);
  115.  
  116. ItemStack diamond = new ItemStack(Material.DIAMOND);
  117. ItemMeta diamondmeta = diamond.getItemMeta();
  118. diamondmeta.setDisplayName("&cDonate for us".replace("&", "§"));
  119. diamond.setItemMeta(diamondmeta);
  120. p.getInventory().setItem(7, diamond);
  121.  
  122. ItemStack emerald = new ItemStack(Material.EMERALD);
  123. ItemMeta emeraldmeta = emerald.getItemMeta();
  124. emeraldmeta.setDisplayName("&cVote Links".replace("&", "§"));
  125. emerald.setItemMeta(emeraldmeta);
  126. p.getInventory().setItem(8, emerald);
  127. p.updateInventory();
  128. }
  129.  
  130.  
  131. @EventHandler
  132. public void ChatEvent(AsyncPlayerChatEvent event){
  133. Player p = event.getPlayer();
  134. PermissionUser user = PermissionsEx.getUser(p);
  135. String prefix = user.getPrefix();
  136. for(String s : getConfig().getStringList("Ranks")){
  137. if(user.inGroup(s)){
  138. String line = getConfig().getString(s);
  139. line = line.replace("%player%", p.getName());
  140. line = line.replace("%prefix%", prefix);
  141. line = textValues(line);
  142. line = line.replace("%message%", event.getMessage());
  143.  
  144. event.setFormat(line);
  145. }
  146. }
  147. }
  148.  
  149. public void sendToServer(String server, Player player) throws IOException {
  150. ByteArrayOutputStream b = new ByteArrayOutputStream();
  151. DataOutputStream out = new DataOutputStream(b);
  152.  
  153. out.writeUTF("Connect");
  154. out.writeUTF(server);
  155. out.close();
  156.  
  157. player.sendPluginMessage(this, "BungeeCord", b.toByteArray());
  158. }
  159.  
  160. private String textValues(String line){
  161. line = line.replaceAll("&0", ChatColor.BLACK.toString());
  162. line = line.replaceAll("&1", ChatColor.DARK_BLUE.toString());
  163. line = line.replaceAll("&2", ChatColor.DARK_GREEN.toString());
  164. line = line.replaceAll("&3", ChatColor.DARK_AQUA.toString());
  165. line = line.replaceAll("&4", ChatColor.DARK_RED.toString());
  166. line = line.replaceAll("&5", ChatColor.DARK_PURPLE.toString());
  167. line = line.replaceAll("&6", ChatColor.GOLD.toString());
  168. line = line.replaceAll("&7", ChatColor.GRAY.toString());
  169. line = line.replaceAll("&8", ChatColor.DARK_GRAY.toString());
  170. line = line.replaceAll("&9", ChatColor.BLUE.toString());
  171. line = line.replaceAll("&a", ChatColor.GREEN.toString());
  172. line = line.replaceAll("&b", ChatColor.AQUA.toString());
  173. line = line.replaceAll("&c", ChatColor.RED.toString());
  174. line = line.replaceAll("&d", ChatColor.LIGHT_PURPLE.toString());
  175. line = line.replaceAll("&e", ChatColor.YELLOW.toString());
  176. line = line.replaceAll("&f", ChatColor.WHITE.toString());
  177. line = line.replaceAll("&m", ChatColor.STRIKETHROUGH.toString());
  178. line = line.replaceAll("&n", ChatColor.UNDERLINE.toString());
  179. line = line.replaceAll("&l", ChatColor.BOLD.toString());
  180. line = line.replaceAll("&k", ChatColor.MAGIC.toString());
  181. line = line.replaceAll("&o", ChatColor.ITALIC.toString());
  182. line = line.replaceAll("&r", ChatColor.RESET.toString());
  183.  
  184. return line;
  185. }
  186.  
  187. public boolean onCommand(CommandSender sender, Command cmds, String cmd, String[] args) {
  188. if(cmd.equalsIgnoreCase("setspawn")){
  189. Player p = (Player)sender;
  190. if(!p.hasPermission("centrixlobby.setspawn")){
  191. p.sendMessage("§8§l§m=======================");
  192. p.sendMessage(" ");
  193. p.sendMessage("§bYou don't have the permission for this!");
  194. p.sendMessage(" ");
  195. p.sendMessage("§8§l§m=======================");
  196. } else {
  197. p.sendMessage("§8§l§m=======================");
  198. p.sendMessage(" ");
  199. p.sendMessage(" §bThe Spawn has been Set!");
  200. p.sendMessage(" ");
  201. p.sendMessage("§8§l§m=======================");
  202.  
  203. String world = p.getWorld().getName();
  204. double x = p.getLocation().getX();
  205. double y = p.getLocation().getY();
  206. double z = p.getLocation().getZ();
  207. double yaw = p.getLocation().getYaw();
  208. double pitch = p.getLocation().getPitch();
  209. getConfig().set("Spawn.world", world);
  210. getConfig().set("Spawn.x", x);
  211. getConfig().set("Spawn.y", y);
  212. getConfig().set("Spawn.z", z);
  213. getConfig().set("Spawn.yaw", yaw);
  214. getConfig().set("Spawn.pitch", pitch);
  215. saveConfig();
  216. }
  217. } if (cmd.equalsIgnoreCase("spawn")){
  218. String stringYaw = getConfig().getString("Spawn.yaw");
  219. String stringPitch = getConfig().getString("Spawn.pitch");
  220.  
  221. String stringX = getConfig().getString("Spawn.x");
  222. String stringY = getConfig().getString("Spawn.y");
  223. String stringZ = getConfig().getString("Spawn.z");
  224.  
  225. float yaw = Float.parseFloat(stringYaw);
  226. float pitch = Float.parseFloat(stringPitch);
  227.  
  228. double X = Double.parseDouble(stringX);
  229. double Y = Double.parseDouble(stringY);
  230. double Z = Double.parseDouble(stringZ);
  231.  
  232. String world = getConfig().getString("Spawn.world");
  233.  
  234. Location spawn = new Location(Bukkit.getWorld(world), X, Y, Z, yaw, pitch);
  235. Player p = (Player)sender;
  236. p.teleport(spawn);
  237. }
  238. return true;
  239. }
  240.  
  241. public void onDamage(EntityDamageEvent event){
  242. if(event.getEntity() instanceof Player){
  243. event.setCancelled(true);
  244. } else {
  245. return;
  246. }
  247. }
  248.  
  249. public void saveInventoryAndArmor(Player _player){
  250. ItemStack[] tmpinv = new ItemStack[_player.getInventory().getSize()];
  251. ItemStack[] tmpArmor = new ItemStack[_player.getInventory().getArmorContents().length];
  252. tmpArmor = _player.getInventory().getArmorContents();
  253. tmpinv = _player.getInventory().getContents();
  254. this.inventories.put(_player, tmpinv);
  255. this.armors.put(_player, tmpArmor);
  256. }
  257.  
  258. @EventHandler
  259. public void onDeath(PlayerDeathEvent event) {
  260. event.setKeepInventory(true);
  261. event.getDrops().clear();
  262. final Player player = event.getEntity();
  263. speed.remove(player.getName());
  264. }
  265.  
  266.  
  267. @EventHandler
  268. public void onPlayertoggleFlight(PlayerToggleFlightEvent event) {
  269. Player player = event.getPlayer();
  270. if (player.getGameMode() == GameMode.CREATIVE){
  271. return;
  272. }
  273. event.setCancelled(true);
  274. player.setAllowFlight(false);
  275. player.setFlying(false);
  276. doublejump.remove(player.getName());
  277. player.setVelocity(player.getLocation().getDirection().multiply(0.75).setY(1.5));
  278. }
  279.  
  280.  
  281.  
  282. @SuppressWarnings("deprecation")
  283. @EventHandler
  284. public void onPlayerMove(PlayerMoveEvent event) {
  285. Player player = event.getPlayer();
  286. if((player.getGameMode() !=GameMode.CREATIVE)
  287. && (player.getLocation().subtract(0, 1, 0).getBlock().getType() != Material.AIR)
  288. && (!player.isFlying())){
  289. player.setAllowFlight(true);
  290. doublejump.add(player.getName());
  291. }
  292. Location playerLoc = player.getLocation();
  293. int PressurePlate_ID = playerLoc.getWorld().getBlockAt(playerLoc).getRelative(0, 0, 0).getTypeId();
  294. int ID = playerLoc.getWorld().getBlockAt(playerLoc).getRelative(0, -1, 0).getTypeId();
  295. if (PressurePlate_ID == getConfig().getInt("PressurePlate_ID") && (ID == getConfig().getInt("Block_ID"))){
  296. double Height = getConfig().getDouble("Height");
  297. double Width = getConfig().getDouble("Width");
  298.  
  299. double BlockHeight = Height / 25.0D;
  300. double BlockWidth = Width / 3.0D;
  301. player.setVelocity(player.getLocation().getDirection().setY(BlockHeight).multiply(BlockWidth));
  302. if ((getConfig().getBoolean("EnableSound") != Boolean.FALSE.booleanValue()) &&
  303. (getConfig().getBoolean("EnableSound") == Boolean.TRUE.booleanValue())) {
  304. player.playSound(player.getLocation(), Sound.valueOf(getConfig().getString("Sound").toUpperCase()), 100.0F, 100.0F);
  305. }
  306. if ((getConfig().getBoolean("EnableEffect") != Boolean.FALSE.booleanValue()) &&
  307. (getConfig().getBoolean("EnableEffect") == Boolean.TRUE.booleanValue())) {
  308. for (Player all : Bukkit.getOnlinePlayers()) {
  309. all.playEffect(player.getLocation(), Effect.valueOf(getConfig().getString("Effect").toUpperCase()), 4);
  310. }
  311. }
  312. }
  313. if((player.getLocation().getY() < 0) && (getConfig().getString("Spawn") != null)){
  314. String stringYaw = getConfig().getString("Spawn.yaw");
  315. String stringPitch = getConfig().getString("Spawn.pitch");
  316.  
  317. String stringX = getConfig().getString("Spawn.x");
  318. String stringY = getConfig().getString("Spawn.y");
  319. String stringZ = getConfig().getString("Spawn.z");
  320.  
  321. float yaw = Float.parseFloat(stringYaw);
  322. float pitch = Float.parseFloat(stringPitch);
  323.  
  324. double X = Double.parseDouble(stringX);
  325. double Y = Double.parseDouble(stringY);
  326. double Z = Double.parseDouble(stringZ);
  327.  
  328. String world = getConfig().getString("Spawn.world");
  329.  
  330. Location spawn = new Location(Bukkit.getWorld(world), X, Y, Z, yaw, pitch);
  331. player.teleport(spawn);
  332. } else {
  333. return;
  334. }
  335. }
  336.  
  337. @EventHandler
  338. public void onDropEvent(PlayerDropItemEvent event){
  339. if(!event.getPlayer().isOp()){
  340. event.setCancelled(true);
  341. }
  342. }
  343.  
  344. @EventHandler
  345. public void onInventoryInteract(InventoryInteractEvent event){
  346. if(!event.getWhoClicked().isOp()){
  347. event.setCancelled(true);
  348. }
  349. }
  350.  
  351. @EventHandler
  352. public void onInventoryClick(InventoryClickEvent event){
  353. if(!event.getWhoClicked().isOp()){
  354. event.setCancelled(true);
  355. }
  356. }
  357.  
  358. @EventHandler
  359. public void onItemUse(PlayerInteractEvent event){
  360. if((event.getPlayer().getItemInHand().getType() == Material.SUGAR) && ((event.getAction() == Action.RIGHT_CLICK_BLOCK) || (event.getAction() == Action.RIGHT_CLICK_AIR))){
  361. final Player p = event.getPlayer();
  362. if(!speedspam.contains(p)){
  363. if(speed.contains(p.getName())){
  364. p.removePotionEffect(PotionEffectType.SPEED);
  365. speed.remove(p.getName());
  366. p.sendMessage("&e&lSwift-Craft &8» &7Your speed has been disabled!".replace("&", "§"));
  367. } else {
  368. p.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 100000000, 10));
  369. speed.add(p.getName());
  370. p.sendMessage("&e&lSwift-Craft &8» &7Your speed has been enabled!".replace("&", "§"));
  371. }
  372. speedspam.add(p);
  373. Bukkit.getScheduler().scheduleSyncDelayedTask(this, new Runnable(){
  374. public void run(){
  375. speedspam.remove(p);
  376. }
  377. }, 60L);
  378. } else {
  379. p.sendMessage("&e&lSwift-Craft &8» &7Please wait 3 seconds!".replace("&", "§"));
  380. }
  381. } if ((event.getPlayer().getItemInHand().getType() == Material.COMPASS)
  382. && ((event.getAction() == Action.RIGHT_CLICK_AIR)
  383. || (event.getAction() == Action.RIGHT_CLICK_BLOCK)
  384. || ((event.getAction() == Action.LEFT_CLICK_AIR)
  385. || (event.getAction() == Action.LEFT_CLICK_BLOCK)))){
  386. } if ((event.getPlayer().getItemInHand().getType() == Material.WATCH)
  387. && ((event.getAction() == Action.RIGHT_CLICK_AIR)
  388. || (event.getAction() == Action.RIGHT_CLICK_BLOCK)
  389. || ((event.getAction() == Action.LEFT_CLICK_AIR)
  390. || (event.getAction() == Action.LEFT_CLICK_BLOCK)))){
  391. final Player p = event.getPlayer();
  392. if(!clockspam.contains(p)){
  393. toggleClock(p);
  394. clockspam.add(p);
  395. Bukkit.getScheduler().scheduleSyncDelayedTask(this, new Runnable(){
  396. public void run(){
  397. clockspam.remove(p);
  398. }
  399. }, 60L);
  400. } else {
  401. p.sendMessage("&e&lSwift-Craft &8» &7Please wait 3 seconds!".replace("&", "§"));
  402. }
  403. } if ((event.getPlayer().getItemInHand().getType() == Material.BEACON)
  404. && ((event.getAction() == Action.RIGHT_CLICK_AIR)
  405. || (event.getAction() == Action.RIGHT_CLICK_BLOCK)
  406. || ((event.getAction() == Action.LEFT_CLICK_AIR)
  407. || (event.getAction() == Action.LEFT_CLICK_BLOCK)))){
  408. Player p = event.getPlayer();
  409. event.setCancelled(true);
  410. p.updateInventory();
  411. } if ((event.getPlayer().getItemInHand().getType() == Material.CHEST)
  412. && ((event.getAction() == Action.RIGHT_CLICK_AIR)
  413. || (event.getAction() == Action.RIGHT_CLICK_BLOCK)
  414. || ((event.getAction() == Action.LEFT_CLICK_AIR)
  415. || (event.getAction() == Action.LEFT_CLICK_BLOCK)))){
  416. Player p = event.getPlayer();
  417. event.setCancelled(true);
  418. p.updateInventory();
  419. } if ((event.getPlayer().getItemInHand().getType() == Material.EMERALD)
  420. && ((event.getAction() == Action.RIGHT_CLICK_AIR)
  421. || (event.getAction() == Action.RIGHT_CLICK_BLOCK)
  422. || ((event.getAction() == Action.LEFT_CLICK_AIR)
  423. || (event.getAction() == Action.LEFT_CLICK_BLOCK)))){
  424. Player p = event.getPlayer();
  425. event.setCancelled(true);
  426. p.updateInventory();
  427.  
  428. p.sendMessage("&4Site 1: &ehttp://serverpact.nl/vote-27390".replace("&", "§"));
  429. p.sendMessage("&4Site 2: &ehttp://minecraftservers.org/server/271391".replace("&", "§"));
  430. p.sendMessage("&4Site 3: &ehttp://minecraft-server-list.com/server/322512/vote/".replace("&", "§"));
  431. p.sendMessage("&4Site 4: &ehttp://minecraft-mp.com/server/101092/vote/".replace("&", "§"));
  432. } if ((event.getPlayer().getItemInHand().getType() == Material.DIAMOND)
  433. && ((event.getAction() == Action.RIGHT_CLICK_AIR)
  434. || (event.getAction() == Action.RIGHT_CLICK_BLOCK)
  435. || ((event.getAction() == Action.LEFT_CLICK_AIR)
  436. || (event.getAction() == Action.LEFT_CLICK_BLOCK)))){
  437. Player p = event.getPlayer();
  438. event.setCancelled(true);
  439. p.updateInventory();
  440.  
  441. p.sendMessage("&4=================================".replace("&", "§"));
  442. p.sendMessage("&bDonate on the link below to support us!".replace("&", "§"));
  443. p.sendMessage("&eswift-craft.buycraft.net".replace("&", "§"));
  444. p.sendMessage("&4=================================".replace("&", "§"));
  445. }
  446. }
  447.  
  448. @EventHandler
  449. public void onPlayerRespawn(PlayerRespawnEvent e){
  450. Player p = e.getPlayer();
  451. String stringYaw = getConfig().getString("Spawn.yaw");
  452. String stringPitch = getConfig().getString("Spawn.pitch");
  453.  
  454. String stringX = getConfig().getString("Spawn.x");
  455. String stringY = getConfig().getString("Spawn.y");
  456. String stringZ = getConfig().getString("Spawn.z");
  457.  
  458. float yaw = Float.parseFloat(stringYaw);
  459. float pitch = Float.parseFloat(stringPitch);
  460.  
  461. double X = Double.parseDouble(stringX);
  462. double Y = Double.parseDouble(stringY);
  463. double Z = Double.parseDouble(stringZ);
  464.  
  465. String world = getConfig().getString("Spawn.world");
  466.  
  467. Location spawn = new Location(Bukkit.getWorld(world), X, Y, Z, yaw, pitch);
  468. e.setRespawnLocation(spawn);
  469.  
  470. giveInventory(p);
  471. }
  472.  
  473. @EventHandler
  474. public void FoodLevelChangeEvent(org.bukkit.event.entity.FoodLevelChangeEvent event){
  475. event.setCancelled(true);
  476. }
  477.  
  478. @SuppressWarnings("deprecation")
  479. @EventHandler
  480. public void onPlayerJoin(PlayerJoinEvent e){
  481. Player p = e.getPlayer();
  482. p.setHealth(20);
  483. p.setFoodLevel(20);
  484. if(!p.hasPlayedBefore()){
  485. p.sendMessage("");
  486. }
  487. e.setJoinMessage("");
  488. String stringYaw = getConfig().getString("Spawn.yaw");
  489. String stringPitch = getConfig().getString("Spawn.pitch");
  490.  
  491. String stringX = getConfig().getString("Spawn.x");
  492. String stringY = getConfig().getString("Spawn.y");
  493. String stringZ = getConfig().getString("Spawn.z");
  494.  
  495. float yaw = Float.parseFloat(stringYaw);
  496. float pitch = Float.parseFloat(stringPitch);
  497.  
  498. double X = Double.parseDouble(stringX);
  499. double Y = Double.parseDouble(stringY);
  500. double Z = Double.parseDouble(stringZ);
  501.  
  502. String world = getConfig().getString("Spawn.world");
  503.  
  504. Location spawn = new Location(Bukkit.getWorld(world), X, Y, Z, yaw, pitch);
  505. p.teleport(spawn);
  506.  
  507. giveInventory(p);
  508. }
  509.  
  510. @SuppressWarnings("deprecation")
  511. @EventHandler
  512. public void onProjectileHit(ProjectileHitEvent e){
  513. if ((e.getEntity() instanceof Arrow)){
  514. Arrow a = (Arrow)e.getEntity();
  515. if ((a.getShooter() instanceof Player)){
  516. Player p = (Player)a.getShooter();
  517. Location destination = a.getLocation();
  518. destination.setPitch(p.getLocation().getPitch());
  519. destination.setYaw(p.getLocation().getYaw());
  520. destination.getWorld().playEffect(destination, Effect.MOBSPAWNER_FLAMES, 2);
  521. p.teleport(destination);
  522.  
  523. a.remove();
  524. }
  525. }
  526. }
  527.  
  528. @EventHandler
  529. public void onPlayerQuit(PlayerQuitEvent e){
  530. Player p = e.getPlayer();
  531. e.setQuitMessage("");
  532. p.getInventory().clear();
  533. p.removePotionEffect(PotionEffectType.SPEED);
  534.  
  535. toggled.remove(e.getPlayer());
  536. clockspam.remove(e.getPlayer());
  537. speed.remove(e.getPlayer());
  538. speedspam.remove(e.getPlayer());
  539. }
  540.  
  541. @EventHandler
  542. public void onPlayerChangeWorld(PlayerChangedWorldEvent e){
  543. Player p = e.getPlayer();
  544. giveInventory(p);
  545. }
  546.  
  547.  
  548. @SuppressWarnings("deprecation")
  549. @EventHandler
  550. public void onLogin(PlayerJoinEvent event){
  551. for(Player p : Bukkit.getOnlinePlayers()){
  552. if(SwiftLobby.toggled.contains(p)){
  553. p.hidePlayer(event.getPlayer());
  554. } else {
  555. p.showPlayer(event.getPlayer());
  556. }
  557. }
  558. }
  559.  
  560. @SuppressWarnings("deprecation")
  561. public static void toggleClock(Player p){
  562. if (SwiftLobby.toggled.contains(p)){
  563. for (Player pl : Bukkit.getOnlinePlayers()) {
  564. p.showPlayer(pl);
  565. }
  566. SwiftLobby.toggled.remove(p);
  567. p.sendMessage("&e&lSwift-Craft &8» &7All players are now unvanished!".replace("&", "§"));
  568.  
  569. ItemStack clock = new ItemStack(Material.WATCH);
  570. ItemMeta clockmeta = clock.getItemMeta();
  571. clockmeta.setDisplayName("&cVanisher &7(&4OFF&7)".replace("&", "§"));
  572. clock.setItemMeta(clockmeta);
  573. p.getInventory().setItem(4, clock);
  574. p.updateInventory();
  575. } else {
  576. for (Player pl : Bukkit.getOnlinePlayers()) {
  577. p.hidePlayer(pl);
  578. }
  579. SwiftLobby.toggled.add(p);
  580. p.sendMessage("&e&lSwift-Craft &8» &7All players are now vanished!".replace("&", "§"));
  581.  
  582. ItemStack clock = new ItemStack(Material.WATCH);
  583. ItemMeta clockmeta = clock.getItemMeta();
  584. clockmeta.setDisplayName("&cVanisher &7(&2ON&7)".replace("&", "§"));
  585. clock.setItemMeta(clockmeta);
  586. p.getInventory().setItem(4, clock);
  587. p.updateInventory();
  588. }
  589. }
  590.  
  591. public static String colorize(String Message){
  592. return Message.replaceAll("~([a-z0-9])", "§$1");
  593. }
  594. }
Add Comment
Please, Sign In to add comment