Advertisement
DevilSecktor

Kangaroo

Apr 27th, 2015
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.65 KB | None | 0 0
  1. package me.sanakits.Kits;
  2.  
  3. import java.util.ArrayList;
  4. import me.sanakits.Main;
  5. import org.bukkit.ChatColor;
  6. import org.bukkit.Location;
  7. import org.bukkit.Material;
  8. import org.bukkit.Sound;
  9. import org.bukkit.block.Block;
  10. import org.bukkit.block.BlockFace;
  11. import org.bukkit.command.Command;
  12. import org.bukkit.command.CommandExecutor;
  13. import org.bukkit.command.CommandSender;
  14. import org.bukkit.configuration.file.FileConfiguration;
  15. import org.bukkit.enchantments.Enchantment;
  16. import org.bukkit.entity.Entity;
  17. import org.bukkit.entity.Player;
  18. import org.bukkit.event.EventHandler;
  19. import org.bukkit.event.Listener;
  20. import org.bukkit.event.block.Action;
  21. import org.bukkit.event.entity.EntityDamageEvent;
  22. import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
  23. import org.bukkit.event.player.PlayerInteractEvent;
  24. import org.bukkit.event.player.PlayerMoveEvent;
  25. import org.bukkit.inventory.ItemStack;
  26. import org.bukkit.inventory.PlayerInventory;
  27. import org.bukkit.inventory.meta.ItemMeta;
  28. import org.bukkit.util.Vector;
  29.  
  30. public class Kangaroo
  31. implements Listener, CommandExecutor
  32. {
  33. public static ArrayList<Player> kangaroo = new ArrayList();
  34. public static Main plugin;
  35.  
  36. public Kangaroo(Main main)
  37. {
  38. plugin = main;
  39. }
  40.  
  41. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
  42. {
  43. Player p = (Player)sender;
  44. if (label.equalsIgnoreCase("kangaroo"))
  45. {
  46. if (!Main.usandokit.contains(p.getName()))
  47. {
  48. if (p.hasPermission("kit.kangaroo"))
  49. {
  50. p.sendMessage("§c§lVoce pegou o Kit : §b§l§oKangaroo");
  51. p.playSound(p.getLocation(), Sound.NOTE_PLING, 4.0F, 4.0F);
  52. Main.usandokit.add(p.getName());
  53. Main.kangaroo.add(sender.getName());
  54. p.getInventory().clear();
  55. ItemStack espada = new ItemStack(Material.WOOD_SWORD);
  56. ItemMeta espadameta = espada.getItemMeta();
  57. espadameta.setDisplayName("§cSword");
  58. espada.addEnchantment(Enchantment.DURABILITY, 3);
  59. p.getInventory().addItem(new ItemStack[] { espada });
  60. ItemStack bow = new ItemStack(Material.FIREWORK);
  61. ItemMeta bowmeta = bow.getItemMeta();
  62. bowmeta.setDisplayName("§cKangaroo Rocket");
  63. bow.setItemMeta(bowmeta);
  64. p.getInventory().addItem(new ItemStack[] { bow });
  65. Main.giveSoup(p, 34);
  66. }
  67. else
  68. {
  69. p.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("Sem_Permissão_Kit")));
  70. }
  71. }
  72. else {
  73. p.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("Um_Kit_Por_Vida")));
  74. }
  75. return true;
  76. }
  77. return false;
  78. }
  79.  
  80. @EventHandler
  81. public void onInteract(PlayerInteractEvent event)
  82. {
  83. Player p = event.getPlayer();
  84. if (p.getItemInHand().getType() == Material.FIREWORK)
  85. {
  86. if ((event.getAction() == Action.LEFT_CLICK_AIR) ||
  87. (event.getAction() == Action.LEFT_CLICK_BLOCK) ||
  88. (event.getAction() == Action.RIGHT_CLICK_BLOCK) ||
  89. (event.getAction() == Action.RIGHT_CLICK_AIR)) {
  90. event.setCancelled(true);
  91. }
  92. if ((Main.kangaroo.contains(p.getName())) &&
  93. (!kangaroo.contains(p)))
  94. {
  95. if (!p.isSneaking())
  96. {
  97. p.setFallDistance(-5.0F);
  98. Vector vector = p.getEyeLocation().getDirection();
  99. vector.multiply(0.6F);
  100. vector.setY(1.2F);
  101. p.setVelocity(vector);
  102. }
  103. else
  104. {
  105. p.setFallDistance(-5.0F);
  106. Vector vector = p.getEyeLocation().getDirection();
  107. vector.multiply(1.2F);
  108. vector.setY(0.8D);
  109. p.setVelocity(vector);
  110. }
  111. kangaroo.add(p);
  112. }
  113. }
  114. }
  115.  
  116. @EventHandler
  117. public void onMove(PlayerMoveEvent event)
  118. {
  119. Player p = event.getPlayer();
  120. if (kangaroo.contains(p))
  121. {
  122. Block b = p.getLocation().getBlock();
  123. if ((b.getType() != Material.AIR) ||
  124. (b.getRelative(BlockFace.DOWN).getType() != Material.AIR))
  125. {
  126. kangaroo.remove(p);
  127.  
  128. return;
  129. }
  130. }
  131. }
  132.  
  133. @EventHandler
  134. public void onDamage(EntityDamageEvent event)
  135. {
  136. Entity e = event.getEntity();
  137. if ((e instanceof Player))
  138. {
  139. Player player = (Player)e;
  140. if (((event.getEntity() instanceof Player)) &&
  141. (event.getCause() == EntityDamageEvent.DamageCause.FALL) &&
  142. (player.getInventory().contains(Material.FIREWORK)) &&
  143. (event.getDamage() >= 7.0D)) {
  144. event.setDamage(7.0D);
  145. }
  146. }
  147. }
  148. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement