Advertisement
thegarfish

Untitled

Sep 14th, 2013
43
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.18 KB | None | 0 0
  1. package me.thegarfish.pvp;
  2.  
  3. import org.bukkit.Color;
  4. import org.bukkit.Material;
  5. import org.bukkit.command.Command;
  6. import org.bukkit.command.CommandSender;
  7. import org.bukkit.enchantments.Enchantment;
  8. import org.bukkit.entity.Item;
  9. import org.bukkit.entity.Player;
  10. import org.bukkit.event.EventHandler;
  11. import org.bukkit.event.Listener;
  12. import org.bukkit.event.block.Action;
  13. import org.bukkit.event.entity.PlayerDeathEvent;
  14. import org.bukkit.event.player.PlayerDropItemEvent;
  15. import org.bukkit.event.player.PlayerInteractEvent;
  16. import org.bukkit.inventory.ItemStack;
  17. import org.bukkit.inventory.meta.LeatherArmorMeta;
  18. import org.bukkit.metadata.FixedMetadataValue;
  19. import org.bukkit.metadata.MetadataValue;
  20. import org.bukkit.plugin.java.JavaPlugin;
  21. import org.bukkit.potion.PotionEffect;
  22. import org.bukkit.potion.PotionEffectType;
  23.  
  24. public class Main extends JavaPlugin implements Listener {
  25.  
  26. public void onEnable() {
  27. System.out.print("§4KitPvP Enabled!");
  28. getServer().getPluginManager().registerEvents(this, this);
  29. getConfig().options().copyDefaults(true);
  30. saveConfig();
  31. }
  32.  
  33. public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
  34. if (sender instanceof Player == false) {
  35. sender.sendMessage("You must be a player to select a kit.");
  36. return true;
  37. }
  38. Player player = (Player) sender;
  39. if (player.hasMetadata("kit")) {
  40. player.sendMessage("You have already selected a kit!");
  41. return true;
  42. }
  43. if(commandLabel.equalsIgnoreCase("Kits")) {
  44. player.sendMessage("§aKits: Warrior, Archer, Tank");
  45. player.sendMessage("§6Gold Kits: Pyromancer, Scout, ???");
  46. player.sendMessage("§cPlatinum Kits: Rot, ???");
  47.  
  48. } else if(commandLabel.equalsIgnoreCase("Rot")) {
  49. player.setMetadata("kit", (MetadataValue) new FixedMetadataValue(this, commandLabel));
  50. player.sendMessage("§4ONLY ROT's WEAKNESS CAN HAND THIS KIT!");
  51. ItemStack rot = new ItemStack(Material.STICK);
  52. rot.addUnsafeEnchantment(Enchantment.KNOCKBACK, 5);
  53. player.getInventory().addItem(rot);
  54. ItemStack helm = new ItemStack(Material.LEATHER_HELMET);
  55. LeatherArmorMeta meta = (LeatherArmorMeta) helm.getItemMeta();
  56. meta.setColor(Color.FUCHSIA);
  57. helm.setItemMeta(meta);
  58. player.getInventory().setHelmet(helm);
  59. player.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS,Integer.MAX_VALUE, 1));
  60. player.addPotionEffect(new PotionEffect(PotionEffectType.SLOW_DIGGING,Integer.MAX_VALUE, 4));
  61. player.addPotionEffect(new PotionEffect(PotionEffectType.HUNGER,Integer.MAX_VALUE, 1));
  62. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  63. player.getInventory().addItem(new ItemStack(Material.BOWL));
  64. player.getInventory().addItem(new ItemStack(Material.BOWL));
  65. player.getInventory().addItem(new ItemStack(Material.BOWL));
  66. player.getInventory().addItem(new ItemStack(Material.BOWL));
  67. player.getInventory().addItem(new ItemStack(Material.BOWL));
  68. player.getInventory().addItem(new ItemStack(Material.BOWL));
  69. player.getInventory().addItem(new ItemStack(Material.BOWL));
  70. } else if(commandLabel.equalsIgnoreCase("Archer")) {
  71. player.setMetadata("kit", (MetadataValue) new FixedMetadataValue(this, commandLabel));
  72. player.sendMessage("§6You have chosen kit §aArcher§6!");
  73. player.getInventory().setHelmet(new ItemStack (Material.CHAINMAIL_HELMET));
  74. player.getInventory().setChestplate(new ItemStack (Material.CHAINMAIL_CHESTPLATE));
  75. player.getInventory().setLeggings(new ItemStack(Material.CHAINMAIL_LEGGINGS));
  76. player.getInventory().setBoots(new ItemStack(Material.CHAINMAIL_BOOTS));
  77. ItemStack bow = new ItemStack(Material.BOW);
  78. bow.addEnchantment(Enchantment.DURABILITY, 1);
  79. bow.addEnchantment(Enchantment.ARROW_KNOCKBACK, 1);
  80. bow.addEnchantment(Enchantment.ARROW_INFINITE, 1);
  81. player.getInventory().addItem(bow);
  82. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  83. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  84. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  85. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  86. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  87. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  88. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  89. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  90. player.getInventory().addItem(new ItemStack(Material.ARROW));
  91. } else if(commandLabel.equalsIgnoreCase("Tank")) {
  92. player.setMetadata("kit", (MetadataValue) new FixedMetadataValue(this, commandLabel));
  93. player.sendMessage("§6You have chosen kit §aTank§6!");
  94. player.getInventory().setHelmet(new ItemStack(Material.DIAMOND_HELMET));
  95. player.getInventory().setChestplate(new ItemStack(Material.DIAMOND_CHESTPLATE));
  96. player.getInventory().setLeggings(new ItemStack(Material.DIAMOND_LEGGINGS));
  97. player.getInventory().setBoots(new ItemStack(Material.DIAMOND_BOOTS));
  98. ItemStack tanksword = new ItemStack(Material.IRON_AXE);
  99. tanksword.addEnchantment(Enchantment.DURABILITY, 3);
  100. tanksword.addEnchantment(Enchantment.DAMAGE_ALL, 1);
  101. player.getInventory().addItem(tanksword);
  102. player.addPotionEffect(new PotionEffect(PotionEffectType.SLOW,Integer.MAX_VALUE, 1));
  103. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  104. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  105. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  106. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  107. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  108. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  109. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  110. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  111. } else if(commandLabel.equalsIgnoreCase("Warrior")) {
  112. player.setMetadata("kit", (MetadataValue) new FixedMetadataValue(this, commandLabel));
  113. player.sendMessage("§6You have chosen kit §aWarrior§6!");
  114. player.getInventory().setHelmet(new ItemStack (Material.IRON_HELMET));
  115. player.getInventory().setChestplate(new ItemStack (Material.IRON_CHESTPLATE));
  116. player.getInventory().setLeggings(new ItemStack (Material.IRON_LEGGINGS));
  117. player.getInventory().setBoots(new ItemStack (Material.IRON_BOOTS));
  118. player.getInventory().addItem(new ItemStack (Material.DIAMOND_SWORD));
  119. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  120. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  121. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  122. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  123. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  124. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  125. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  126. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  127. } else if(commandLabel.equalsIgnoreCase("Pyromancer")) {
  128. player.setMetadata("kit", (MetadataValue) new FixedMetadataValue(this, commandLabel));
  129. player.sendMessage("§6You have chosen kit §cPyromancer!");
  130. player.getInventory().setHelmet(new ItemStack(Material.CHAINMAIL_HELMET));
  131. player.getInventory().setChestplate(new ItemStack(Material.CHAINMAIL_CHESTPLATE));
  132. player.getInventory().setLeggings(new ItemStack(Material.CHAINMAIL_LEGGINGS));
  133. player.getInventory().setBoots(new ItemStack(Material.CHAINMAIL_BOOTS));
  134. player.getInventory().addItem(new ItemStack(Material.FLINT_AND_STEEL));
  135. player.getInventory().addItem(new ItemStack(Material.LAVA_BUCKET));
  136. player.addPotionEffect(new PotionEffect(PotionEffectType.FIRE_RESISTANCE,Integer.MAX_VALUE, 1));
  137. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  138. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  139. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  140. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  141. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  142. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  143. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  144. } else if(commandLabel.equalsIgnoreCase("Scout")) {
  145. ItemStack scouthelm = new ItemStack(Material.LEATHER_HELMET);
  146. LeatherArmorMeta meta = (LeatherArmorMeta) scouthelm.getItemMeta();
  147. meta.setColor(Color.YELLOW);
  148. scouthelm.setItemMeta(meta);
  149. player.getInventory().setHelmet(scouthelm);
  150. ItemStack scoutchest = new ItemStack(Material.LEATHER_CHESTPLATE);
  151. LeatherArmorMeta meta1 = (LeatherArmorMeta) scoutchest.getItemMeta();
  152. meta1.setColor(Color.YELLOW);
  153. scoutchest.setItemMeta(meta1);
  154. player.getInventory().setChestplate(scoutchest);
  155. ItemStack scoutpants = new ItemStack(Material.LEATHER_LEGGINGS);
  156. LeatherArmorMeta meta11 = (LeatherArmorMeta) scoutchest.getItemMeta();
  157. meta11.setColor(Color.YELLOW);
  158. scoutpants.setItemMeta(meta11);
  159. player.getInventory().setLeggings(scoutpants);
  160. ItemStack scoutboots = new ItemStack(Material.LEATHER_BOOTS);
  161. LeatherArmorMeta meta111 = (LeatherArmorMeta) scoutboots.getItemMeta();
  162. meta111.setColor(Color.YELLOW);
  163. scoutboots.setItemMeta(meta111);
  164. player.getInventory().setBoots(scoutboots);
  165. player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED,Integer.MAX_VALUE, 1));
  166. ItemStack scoutshovel = new ItemStack(Material.IRON_SPADE);
  167. scoutshovel.addEnchantment(Enchantment.DURABILITY, 3);
  168. scoutshovel.addUnsafeEnchantment(Enchantment.DAMAGE_ALL, 2);
  169. player.getInventory().addItem(scoutshovel);
  170. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  171. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  172. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  173. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  174. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  175. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  176. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  177. player.getInventory().addItem(new ItemStack(Material.MUSHROOM_SOUP));
  178. } else if(commandLabel.equalsIgnoreCase("Kills")) {
  179. player.sendMessage(getConfig().getString("kills:"));
  180. }
  181. return false;
  182.  
  183. }
  184.  
  185. @EventHandler
  186. public void onPlayerDeath(PlayerDeathEvent event) {
  187. Player p = event.getEntity();
  188. if (p.hasPermission("kit.nodrop")) {
  189. event.getDrops().clear();
  190. }
  191. p.removeMetadata("kit", this);
  192. if(p.getKiller() instanceof Player){ //Check if the entity who killed the player is a player
  193. Player killer = p.getKiller(); //The killer of the person
  194. this.reloadConfig();
  195. getConfig().set("players." + p.getName() + ".deaths", getConfig().getInt("players." + p.getName() + ".deaths") + 1); //Add a death to the player
  196. getConfig().set("players." + killer.getName() + ".kills", getConfig().getInt("players." + killer.getName() + ".kills") + 1); //Add a kill to the killer
  197. this.saveConfig();
  198. }
  199.  
  200. }
  201.  
  202. @EventHandler
  203. public void onPlayerInteract(PlayerInteractEvent event) {
  204. if (event.getAction() == Action.RIGHT_CLICK_AIR
  205. || event.getAction() == Action.RIGHT_CLICK_BLOCK) {
  206. Player player = event.getPlayer();
  207. if (player.getItemInHand() != null
  208. && player.getItemInHand().getType() == Material.MUSHROOM_SOUP) {
  209. if (player.getHealth() == player.getMaxHealth())
  210. return;
  211.  
  212. event.setCancelled(true);
  213. player.setHealth(player.getHealth() > 14 ? 20 : player
  214. .getHealth() + 6);
  215. player.getItemInHand().setType(Material.BOWL);
  216. }
  217. }
  218. }
  219.  
  220. @EventHandler
  221. public void onPlayerDropItem(PlayerDropItemEvent event) {
  222. Player p = event.getPlayer();
  223. if(event.getItemDrop().getItemStack().getType() == Material.BOWL) {
  224. }
  225. else {
  226. event.setCancelled(true);
  227. p.sendMessage("§cWarning: §6You Can Not Drop Kit Items! §3(Only Bowls)!");
  228. }
  229.  
  230. }
  231.  
  232.  
  233. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement