Advertisement
Guest User

Untitled

a guest
Jan 25th, 2015
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.95 KB | None | 0 0
  1. package me.AnimatronicWizard;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.ChatColor;
  7. import org.bukkit.Effect;
  8. import org.bukkit.GameMode;
  9. import org.bukkit.Location;
  10. import org.bukkit.Material;
  11. import org.bukkit.Sound;
  12. import org.bukkit.World;
  13. import org.bukkit.block.Block;
  14. import org.bukkit.block.BlockState;
  15. import org.bukkit.command.Command;
  16. import org.bukkit.command.CommandSender;
  17. import org.bukkit.enchantments.Enchantment;
  18. import org.bukkit.entity.Egg;
  19. import org.bukkit.entity.Entity;
  20. import org.bukkit.entity.Player;
  21. import org.bukkit.entity.Skeleton;
  22. import org.bukkit.event.EventHandler;
  23. import org.bukkit.event.Listener;
  24. import org.bukkit.event.entity.CreatureSpawnEvent;
  25. import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason;
  26. import org.bukkit.event.entity.EntityDamageByEntityEvent;
  27. import org.bukkit.event.entity.EntityExplodeEvent;
  28. import org.bukkit.event.player.PlayerEggThrowEvent;
  29. import org.bukkit.event.player.PlayerInteractEvent;
  30. import org.bukkit.event.player.PlayerQuitEvent;
  31. import org.bukkit.inventory.ItemStack;
  32. import org.bukkit.inventory.PlayerInventory;
  33. import org.bukkit.inventory.meta.ItemMeta;
  34. import org.bukkit.inventory.meta.SkullMeta;
  35. import org.bukkit.plugin.java.JavaPlugin;
  36.  
  37. public class Main extends JavaPlugin implements Listener {
  38.  
  39. @Override
  40. public void onEnable(){
  41. Bukkit.getServer().getPluginManager().registerEvents(this, this);
  42. }
  43.  
  44. @EventHandler
  45. public void playerQuit(PlayerQuitEvent event){
  46.  
  47. Player player = event.getPlayer();
  48. PlayerInventory inventory = player.getInventory();
  49. inventory.clear();
  50. }
  51.  
  52. ArrayList<Player> join = new ArrayList<Player>();
  53.  
  54. public boolean onCommand(final CommandSender sender, Command cmd, String label, String[] args) {
  55. if (cmd.getName().equalsIgnoreCase("EasterHunt")) {
  56.  
  57. Player player = (Player) sender;
  58.  
  59. join.add(player);
  60.  
  61. player.sendMessage(ChatColor.GOLD + player.getName() + ChatColor.GREEN + " joined the game. " + ChatColor.AQUA + join.size() + ChatColor.GREEN + "/" + ChatColor.AQUA + "15");
  62.  
  63. World world = player.getWorld();
  64. player.teleport(new Location(world, 1, 86, 1));
  65. player.setGameMode(GameMode.ADVENTURE);
  66.  
  67. this.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
  68. public void run() {
  69. Player player = (Player) sender;
  70. if(join.size() == 1){
  71.  
  72. join.clear();
  73.  
  74. World world = Bukkit.getWorld("EasterHunt");
  75. player.teleport(new Location(world, 9.5, 65, 0.5));
  76.  
  77. PlayerInventory inventory = player.getInventory();
  78.  
  79. ItemStack sword = new ItemStack(Material.IRON_SWORD, 1);
  80. ItemMeta sword_meta = sword.getItemMeta();
  81. sword_meta.setDisplayName(ChatColor.BLUE + "" + ChatColor.BOLD + "Easter Sword");
  82. sword.setItemMeta(sword_meta);
  83. inventory.setItem(0, sword);
  84.  
  85. ItemStack bow = new ItemStack(Material.BOW, 1);
  86. ItemMeta bow_meta = bow.getItemMeta();
  87. bow_meta.setDisplayName(ChatColor.BLUE + "" + ChatColor.BOLD + "Chocolat Bow");
  88. bow.setItemMeta(bow_meta);
  89. bow.addEnchantment(Enchantment.ARROW_INFINITE, 1);
  90. inventory.setItem(1, bow);
  91.  
  92. ItemStack pic = new ItemStack(Material.DIAMOND_PICKAXE, 1);
  93. ItemMeta pic_meta = pic.getItemMeta();
  94. pic_meta.setDisplayName(ChatColor.BLUE + "" + ChatColor.BOLD + "Bunny Pickaxe");
  95. pic.setItemMeta(pic_meta);
  96. inventory.setItem(2, pic);
  97.  
  98. ItemStack hoe = new ItemStack(Material.IRON_HOE, 1);
  99. ItemMeta hoe_meta = hoe.getItemMeta();
  100. hoe_meta.setDisplayName(ChatColor.BLUE + "" + ChatColor.BOLD + "Egg Cannon");
  101. hoe.setItemMeta(hoe_meta);
  102. inventory.setItem(3, hoe);
  103.  
  104. ItemStack arrow = new ItemStack(Material.ARROW, 1);
  105. inventory.setItem(9, arrow);
  106.  
  107. Location loc1 = new Location(world, 0.5, 65, 0.5);
  108. Location loc2 = new Location(world, 0.5, 65, 0.5);
  109.  
  110. Skeleton ears = loc1.getWorld().spawn(loc1, Skeleton.class);
  111. Skeleton bunny = loc2.getWorld().spawn(loc2, Skeleton.class);
  112. bunny.setPassenger(ears);
  113.  
  114. ItemStack skull1 = new ItemStack(Material.SKULL_ITEM, 1, (short) 3);
  115. SkullMeta meta1 = (SkullMeta) skull1.getItemMeta();
  116. meta1.setOwner("slenderman213");
  117. skull1.setItemMeta(meta1);
  118. ears.getEquipment().setHelmet(skull1);
  119. ears.setCustomName("Dinnerbone");
  120. ears.getEquipment().setItemInHand(new ItemStack(Material.CARROT_ITEM));
  121. ears.setCustomNameVisible(false);
  122.  
  123. ItemStack skull2 = new ItemStack(Material.SKULL_ITEM, 1, (short) 3);
  124. SkullMeta meta2 = (SkullMeta) skull2.getItemMeta();
  125. meta2.setOwner("rabbit2077");
  126. skull1.setItemMeta(meta2);
  127. bunny.getEquipment().setHelmet(skull1);
  128. bunny.getEquipment().setItemInHand(new ItemStack(Material.DRAGON_EGG));
  129. bunny.setCustomName(ChatColor.GOLD + "Easter Bunny");
  130. bunny.setCustomNameVisible(true);
  131. }
  132. }
  133. }, 10L);
  134. }
  135. return false;
  136. }
  137.  
  138. @EventHandler
  139. public void gun(final PlayerInteractEvent event){
  140. Player player = event.getPlayer();
  141. if(player.getInventory().getItemInHand().getType() == Material.IRON_HOE){
  142. Egg egg = player.getWorld().spawn(player.getEyeLocation(), Egg.class);
  143. egg.setVelocity(player.getLocation().getDirection().multiply(1.5));
  144. egg.setShooter(player);
  145. Location eye = player.getEyeLocation();
  146. player.playSound(player.getLocation(), Sound.ITEM_PICKUP, 1, 0);
  147. egg.getLocation().getWorld().playEffect(eye, Effect.CLICK1, 10);
  148. player.setVelocity(player.getLocation().getDirection().multiply(-1));
  149. this.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
  150. public void run() {
  151. Block block = event.getClickedBlock();
  152. if(block.getType() == Material.SOIL){
  153. block.setType(Material.GRASS);
  154. }
  155. }
  156. }, 1L);
  157. }
  158. if(player.getInventory().getItemInHand().getType() == Material.IRON_SWORD){
  159. ItemStack sword = new ItemStack(Material.IRON_SWORD);
  160. sword.setDurability((short) 250);
  161. }
  162. }
  163.  
  164. @EventHandler
  165. public void onCreatureSpawn(CreatureSpawnEvent event)
  166. {
  167. if (event.getSpawnReason() == SpawnReason.EGG)
  168. {
  169. event.setCancelled(true);
  170. }
  171.  
  172. }
  173.  
  174. @EventHandler
  175. public void egg(EntityDamageByEntityEvent event){
  176. if(event.getDamager() instanceof Egg){
  177. event.setDamage(15);
  178. }
  179. }
  180.  
  181. @EventHandler
  182. public void explosion(PlayerEggThrowEvent event){
  183. Location location = event.getEgg().getLocation();
  184. event.getEgg().getWorld().createExplosion(location, 2);
  185. }
  186.  
  187. @EventHandler
  188. public void onEntityExplode(EntityExplodeEvent e) {
  189. for (Block b : e.blockList()) {
  190. final BlockState state = b.getState();
  191.  
  192. b.setType(Material.AIR);
  193.  
  194. int delay = 1;
  195.  
  196. Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
  197. public void run() {
  198. state.update(true, false);
  199. }
  200. }, delay);
  201. }
  202. }
  203.  
  204. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement