Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package de.lobbysystem.listener.items;
- import org.bukkit.scheduler.*;
- import de.lobbysystem.data.*;
- import de.lobbysystem.apis.*;
- import org.bukkit.*;
- import de.lobbysystem.*;
- import org.bukkit.plugin.*;
- import org.bukkit.event.*;
- import org.bukkit.event.player.*;
- import org.bukkit.util.*;
- import org.bukkit.entity.*;
- import java.util.*;
- public class Item_SCHUTZSCHILD implements Listener
- {
- public static HashMap<Player, BukkitRunnable> run;
- static {
- Item_SCHUTZSCHILD.run = new HashMap<Player, BukkitRunnable>();
- }
- @EventHandler
- public void onInteract(final PlayerInteractEvent e) {
- final Player p = e.getPlayer();
- if (e.getItem().hasItemMeta() && (e.getItem().getItemMeta().getDisplayName().equalsIgnoreCase(Items.SCHILD_OFF) || e.getItem().getItemMeta().getDisplayName().equalsIgnoreCase(Items.SCHILD_ON)) && p.hasPermission("lobby.vip")) {
- e.setCancelled(true);
- if (Item_SCHUTZSCHILD.run.containsKey(p)) {
- e.setCancelled(true);
- p.sendMessage(String.valueOf(Data.getPrefix()) + "Du hast das Schutzschild deaktiviert!");
- p.getInventory().setItem(6, ItemAPI.createItem(Material.EYE_OF_ENDER, 1, 0, Items.SCHILD_OFF));
- p.playSound(p.getLocation(), Sound.SUCCESSFUL_HIT, 2.0f, 0.5f);
- p.closeInventory();
- Item_SCHUTZSCHILD.run.get(p).cancel();
- Item_SCHUTZSCHILD.run.remove(p);
- }
- else if (!Item_SCHUTZSCHILD.run.containsKey(p)) {
- Item_SCHUTZSCHILD.run.put(p, (BukkitRunnable)new Item_SCHUTZSCHILD.Item_SCHUTZSCHILD$1(this, p));
- Item_SCHUTZSCHILD.run.get(p).runTaskTimer((Plugin)Main.getInstance(), 20L, 20L);
- e.setCancelled(true);
- p.sendMessage(String.valueOf(Data.getPrefix()) + "Du hast das Schutzschild aktiviert!");
- p.getInventory().setItem(6, ItemAPI.createItem(Material.EYE_OF_ENDER, 1, 0, Items.SCHILD_ON));
- p.playSound(p.getLocation(), Sound.SUCCESSFUL_HIT, 2.0f, 1.0f);
- p.closeInventory();
- }
- }
- }
- @EventHandler
- public void onQuit(final PlayerQuitEvent e) {
- if (Item_SCHUTZSCHILD.run.containsKey(e.getPlayer())) {
- Item_SCHUTZSCHILD.run.get(e.getPlayer()).cancel();
- Item_SCHUTZSCHILD.run.remove(e.getPlayer());
- }
- }
- @EventHandler
- public static void onMove(final PlayerMoveEvent e) {
- final Player p = e.getPlayer();
- for (final Player players : Item_SCHUTZSCHILD.run.keySet()) {
- if (!p.hasPermission("lobby.vip") && p.getLocation().distance(players.getLocation()) <= 4.0) {
- final double Ax = p.getLocation().getX();
- final double Ay = p.getLocation().getY();
- final double Az = p.getLocation().getZ();
- final double Bx = players.getLocation().getX();
- final double By = players.getLocation().getY();
- final double Bz = players.getLocation().getZ();
- final double x = Ax - Bx;
- final double y = Ay - By;
- final double z = Az - Bz;
- final Vector v = new Vector(x, y, z).normalize();
- p.setVelocity(v);
- }
- }
- if (Item_SCHUTZSCHILD.run.containsKey(p)) {
- for (final Entity entity : p.getNearbyEntities(4.0, 4.0, 4.0)) {
- if (entity instanceof Player) {
- final Player target = (Player)entity;
- if (p == target || target.hasPermission("lobby.bypass")) {
- continue;
- }
- final double Ax2 = p.getLocation().getX();
- final double Ay2 = p.getLocation().getY();
- final double Az2 = p.getLocation().getZ();
- final double Bx2 = target.getLocation().getX();
- final double By2 = target.getLocation().getY();
- final double Bz2 = target.getLocation().getZ();
- final double x2 = Bx2 - Ax2;
- final double y2 = By2 - Ay2;
- final double z2 = Bz2 - Az2;
- final Vector v2 = new Vector(x2, y2, z2).normalize();
- target.setVelocity(v2);
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement