Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.mixmasterjacob.buzz;
- import java.util.Arrays;
- import java.util.List;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Location;
- import org.bukkit.Material;
- import org.bukkit.Sound;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.EntityType;
- import org.bukkit.entity.Minecart;
- import org.bukkit.entity.Player;
- import org.bukkit.entity.Projectile;
- import org.bukkit.entity.Snowball;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.Action;
- import org.bukkit.event.entity.EntityDamageByEntityEvent;
- import org.bukkit.event.entity.ProjectileHitEvent;
- import org.bukkit.event.inventory.InventoryClickEvent;
- import org.bukkit.event.player.PlayerDropItemEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.plugin.java.JavaPlugin;
- public class Main extends JavaPlugin implements Listener {
- private ItemStack stack;
- @Override
- public void onEnable() {
- this.getCommand("buzzrank").setExecutor(new BuzzRank(this));
- getServer().getPluginManager().registerEvents(this, this);
- stack = new ItemStack(Material.WOOD_HOE, 1);
- ItemMeta im = stack.getItemMeta();
- im.setDisplayName(ChatColor.BLUE
- + "\u2583\u2584\u2585Ray Gun\u2585\u2584\u2583");
- List<String> loreList = Arrays.asList(ChatColor.BLUE
- + "Click to shoot lazers!", ChatColor.RED
- + "Hit the targets to score points.");
- im.setLore(loreList);
- stack.setItemMeta(im);
- }
- @Override
- public void onDisable() {
- }
- @Override
- public boolean onCommand(CommandSender sender, Command command,
- String label, String[] args) {
- if (!(sender instanceof Player)) {
- if (label.equalsIgnoreCase("buzz")) {
- if (args.length == 1) {
- Player player;
- try {
- player = Bukkit.getPlayer(args[0]);
- } catch (Exception e) {
- return true;
- }
- if (!player.getInventory().contains(stack)) {
- player.getInventory().addItem(stack);
- player.sendMessage(ChatColor.BLUE + "You now have a"
- + ChatColor.RED + " Ray gun!");
- player.setLevel(0);
- }
- }
- } else if (label.equalsIgnoreCase("buzzreset")) {
- if (args.length == 1) {
- Player player;
- try {
- player = Bukkit.getPlayer(args[0]);
- } catch (Exception e) {
- return true;
- }
- player.sendMessage(ChatColor.BLUE + "Your Final Score: "
- + ChatColor.RED + "" + ChatColor.BOLD
- + +player.getLevel());
- player.setLevel(0);
- player.getInventory().removeItem(stack);
- }
- return false;
- }
- }
- return false;
- }
- @EventHandler
- public void oninventoryclick(InventoryClickEvent event) {
- // Player player = (Player) event.getWhoClicked();
- if (event.getCurrentItem().equals(stack)) {
- event.setCancelled(true);
- }
- }
- @EventHandler
- public void onDrop(PlayerDropItemEvent e) {
- if (e.getItemDrop().getItemStack().equals(stack))
- ;
- e.setCancelled(true);
- }
- @EventHandler
- public void onJoin(PlayerJoinEvent e) {
- Player player = (Player) e.getPlayer();
- player.getInventory().removeItem(stack);
- player.setLevel(0);
- }
- @EventHandler
- public void onMinecartHit(EntityDamageByEntityEvent e) {
- if (e.getEntity() instanceof Minecart
- && e.getDamager().getType() == EntityType.SNOWBALL)
- e.setCancelled(true);
- }
- @EventHandler
- public void onInteract(PlayerInteractEvent e) {
- if (e.getAction() == Action.PHYSICAL) {
- return;
- }
- if (e.getPlayer().getItemInHand().equals(stack)) {
- e.setCancelled(true);
- e.getPlayer().launchProjectile(Snowball.class);
- }
- }
- // Diamond Blocks = 1 point
- @SuppressWarnings("deprecation")
- @EventHandler
- public void onProjectileHit(ProjectileHitEvent event) {
- Projectile projectile = event.getEntity();
- if (projectile instanceof Snowball
- && projectile.getShooter() instanceof Player) {
- Snowball snowball = (Snowball) projectile;
- Player player = (Player) projectile.getShooter();
- final Location loc = projectile.getLocation().add(
- projectile.getVelocity().normalize());
- // System.out.println(loc.getBlock().getType());
- if (loc.getBlock().getType() == Material.DIAMOND_BLOCK) {
- if (snowball.getShooter() instanceof Player) {
- ((Player) snowball.getShooter()).playSound(
- snowball.getLocation(), Sound.NOTE_PLING, 10, 1);
- player.setLevel(player.getLevel() + 1);
- player.sendMessage(ChatColor.AQUA + "+1");
- loc.getBlock().setType(Material.REDSTONE_BLOCK);
- Bukkit.getScheduler().scheduleSyncDelayedTask(this,
- new Runnable() {
- @Override
- public void run() {
- loc.getBlock().setType(
- Material.DIAMOND_BLOCK);
- }
- }, 100L);
- }
- }
- }
- }
- // Emerald Blocks = 5 points
- @SuppressWarnings("deprecation")
- @EventHandler
- public void onProjectileHit1(ProjectileHitEvent event) {
- Projectile projectile = event.getEntity();
- if (projectile instanceof Snowball
- && projectile.getShooter() instanceof Player) {
- Snowball snowball = (Snowball) projectile;
- Player player = (Player) projectile.getShooter();
- final Location loc = projectile.getLocation().add(
- projectile.getVelocity().normalize());
- // System.out.println(loc.getBlock().getType());
- if (loc.getBlock().getType() == Material.EMERALD_BLOCK) {
- if (snowball.getShooter() instanceof Player) {
- ((Player) snowball.getShooter()).playSound(
- snowball.getLocation(), Sound.NOTE_PLING, 10,
- (float) 1.3);
- player.setLevel(player.getLevel() + 5);
- player.sendMessage(ChatColor.GREEN + "+5");
- loc.getBlock().setType(Material.REDSTONE_BLOCK);
- Bukkit.getScheduler().scheduleSyncDelayedTask(this,
- new Runnable() {
- @Override
- public void run() {
- loc.getBlock().setType(
- Material.EMERALD_BLOCK);
- }
- }, 200L);
- }
- }
- }
- }
- // Mushroom = 1000 points
- @SuppressWarnings("deprecation")
- @EventHandler
- public void onProjectileHit2(ProjectileHitEvent event) {
- Projectile projectile = event.getEntity();
- if (projectile instanceof Snowball
- && projectile.getShooter() instanceof Player) {
- Snowball snowball = (Snowball) projectile;
- Player player = (Player) projectile.getShooter();
- final Location loc = projectile.getLocation().add(
- projectile.getVelocity().normalize());
- // System.out.println(loc.getBlock().getType());
- if (loc.getBlock().getType() == Material.HUGE_MUSHROOM_1) {
- if (snowball.getShooter() instanceof Player) {
- ((Player) snowball.getShooter()).playSound(
- snowball.getLocation(), Sound.NOTE_PLING, 10,
- (float) 1.6);
- player.setLevel(player.getLevel() + 100);
- player.sendMessage(ChatColor.RED + "+100");
- loc.getBlock().setType(Material.REDSTONE_BLOCK);
- Bukkit.getScheduler().scheduleSyncDelayedTask(this,
- new Runnable() {
- @Override
- public void run() {
- loc.getBlock().setType(
- Material.HUGE_MUSHROOM_1);
- }
- }, 300L);
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement