Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2014
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.42 KB | None | 0 0
  1. package me.xKishan.Core;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.ChatColor;
  7. import org.bukkit.Material;
  8. import org.bukkit.enchantments.Enchantment;
  9. import org.bukkit.entity.Player;
  10. import org.bukkit.event.EventHandler;
  11. import org.bukkit.event.Listener;
  12. import org.bukkit.event.player.PlayerItemHeldEvent;
  13. import org.bukkit.inventory.ItemStack;
  14. import org.bukkit.inventory.meta.ItemMeta;
  15.  
  16. public class HubPVPSword implements Listener{
  17.  
  18. @EventHandler
  19. public void onPlayerItemHeld(PlayerItemHeldEvent event){
  20.  
  21. ItemStack diamondSword = new ItemStack(Material.DIAMOND_SWORD);
  22. ItemMeta diamondSwordMeta = diamondSword.getItemMeta();
  23. diamondSwordMeta.setDisplayName(ChatColor.AQUA + "" + ChatColor.BOLD + "PVP Mode");
  24. diamondSwordMeta.addEnchant(Enchantment.DURABILITY, 10, true);
  25. ArrayList<String> Lore = new ArrayList<String>();
  26. Lore.add(ChatColor.GRAY + "Hold to activate PVP mode.");
  27. diamondSwordMeta.setLore(Lore);
  28. diamondSword.setItemMeta(diamondSwordMeta);
  29.  
  30. Player commander = event.getPlayer();
  31. ItemStack item = commander.getInventory().getItem(event.getNewSlot());
  32. if(item == null){
  33. item = new ItemStack(Material.AIR);
  34. }
  35. if(item.getType() == diamondSword.getType()){
  36. commander.getInventory().setItem(7, diamondSword);
  37. if(item.getItemMeta().equals(diamondSword.getItemMeta()) && !CoreAPI.inPVPMode.containsKey(commander.getName())){
  38. enterPVP(commander);
  39. CoreAPI.inPVPMode.put(commander.getName(), true);
  40. }
  41. }
  42. else{
  43. if(CoreAPI.inPVPMode.containsKey(commander.getName())){
  44. CoreAPI.inPVPMode.remove(commander.getName());
  45. leavePVP(commander);
  46. commander.getInventory().setHelmet(new ItemStack(Material.AIR));
  47. commander.getInventory().setChestplate(new ItemStack(Material.AIR));
  48. commander.getInventory().setLeggings(new ItemStack(Material.AIR));
  49. commander.getInventory().setBoots(new ItemStack(Material.AIR));
  50.  
  51. }
  52. }
  53.  
  54. }
  55.  
  56. private int joinCountDown = 3;
  57. int enterPVP;
  58. @SuppressWarnings("deprecation")
  59. public void enterPVP(final Player player) {
  60. enterPVP = Bukkit.getServer().getScheduler().scheduleAsyncRepeatingTask(Main.getPlugin(), new Runnable() {
  61. public void run() {
  62. if (joinCountDown == 3) {
  63. CoreAPI.sendMessage(player, "&d&l>> &7Entering PVP mode in &e&l3s&7...");
  64. }
  65. if (joinCountDown == 2) {
  66. CoreAPI.sendMessage(player, "&d&l>> &7Entering PVP mode in &e&l2s&7...");
  67. }
  68. if (joinCountDown == 1) {
  69. CoreAPI.sendMessage(player, "&d&l>> &7Entering PVP mode in &e&l1s&7...");
  70. }
  71. if (joinCountDown == 0) {
  72. CoreAPI.sendMessage(player, "&d&l>> &7PVP Mode: &a&lENABLED");
  73. player.getInventory().setHelmet(new ItemStack(Material.IRON_HELMET));
  74. player.getInventory().setChestplate(new ItemStack(Material.IRON_CHESTPLATE));
  75. player.getInventory().setLeggings(new ItemStack(Material.IRON_LEGGINGS));
  76. player.getInventory().setBoots(new ItemStack(Material.IRON_BOOTS));
  77. enterPVPStop();
  78. }
  79. joinCountDown--;
  80. }
  81. }, 60L, 30L);
  82. }
  83. public void enterPVPStop() {
  84. Bukkit.getServer().getScheduler().cancelTask(this.enterPVP);
  85. }
  86.  
  87.  
  88. private int leaveCountDown = 3;
  89. int leavePVP;
  90. @SuppressWarnings("deprecation")
  91. public void leavePVP(final Player player) {
  92. leavePVP = Bukkit.getServer().getScheduler().scheduleAsyncRepeatingTask(Main.getPlugin(), new Runnable() {
  93. public void run() {
  94. if (leaveCountDown == 3) {
  95. CoreAPI.sendMessage(player, "&d&l>> &7Leaving PVP mode in &e&l3s&7...");
  96. }
  97. if (leaveCountDown == 2) {
  98. CoreAPI.sendMessage(player, "&d&l>> &7Leaving PVP mode in &e&l2s&7...");
  99. }
  100. if (leaveCountDown == 1) {
  101. CoreAPI.sendMessage(player, "&d&l>> &7Leaving PVP mode in &e&l1s&7...");
  102. }
  103. if (leaveCountDown == 0) {
  104. CoreAPI.sendMessage(player, "&d&l>> &7PVP Mode: &c&lDISABLED");
  105. leavePVPStop();
  106. }
  107. leaveCountDown--;
  108. }
  109. }, 60L, 30L);
  110. }
  111. public void leavePVPStop() {
  112. Bukkit.getServer().getScheduler().cancelTask(this.leavePVP);
  113. }
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement