Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.Wolf.LobbySystem.ItemManager;
- import java.util.ArrayList;
- import java.util.HashMap;
- import me.Wolf.LobbySystem.main.main;
- import org.bukkit.Effect;
- import org.bukkit.Location;
- import org.bukkit.Server;
- import org.bukkit.World;
- import org.bukkit.entity.Entity;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.Action;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.event.player.PlayerQuitEvent;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.plugin.PluginManager;
- import org.bukkit.scheduler.BukkitRunnable;
- import org.bukkit.util.Vector;
- public class Item_schild
- implements Listener
- {
- private main plugin;
- public Item_schild(main main)
- {
- this.plugin = main;
- this.plugin.getServer().getPluginManager().registerEvents(this, main);
- }
- @EventHandler
- public void onInteract(PlayerInteractEvent e)
- {
- final Player p = e.getPlayer();
- if (((e.getAction() == Action.RIGHT_CLICK_BLOCK ? 1 : 0) | (e.getAction() == Action.RIGHT_CLICK_AIR ? 1 : 0)) != 0) {
- try
- {
- if (e.getItem().getItemMeta().getDisplayName().equalsIgnoreCase("§3Schutzschild"))
- {
- if (!main.saving.contains(p.getName()))
- {
- main.saving.add(p.getName());
- main.schild.put(p.getName(), new BukkitRunnable()
- {
- public void run()
- {
- p.getWorld().playEffect(p.getLocation(), Effect.ENDER_SIGNAL, 1);
- p.getWorld().playEffect(p.getEyeLocation(), Effect.ENDER_SIGNAL, 1);
- for (Entity en : p.getNearbyEntities(4.0D, 4.0D, 4.0D)) {
- if ((en instanceof Player))
- {
- Player target = (Player)en;
- double ax = p.getLocation().getX();
- double ay = p.getLocation().getX();
- double az = p.getLocation().getZ();
- double bx = target.getLocation().getX();
- double by = target.getLocation().getY();
- double bz = target.getLocation().getZ();
- double x = bx - ax;
- double y = by - ay;
- double z = bz - az;
- Vector v = new Vector(x, y, z).normalize().multiply(2.0D).setY(0.3D);
- if (target.hasPermission("system.use.schutzschild")) {
- return;
- }
- target.setVelocity(v);
- }
- }
- }
- });
- ((BukkitRunnable)main.schild.get(p.getName())).runTaskTimer(this.plugin, 0L, 2L);
- p.sendMessage(main.prefix + "Dein Schutzschild wurde §aAktiviert§7.");
- return;
- }
- if (main.saving.contains(p.getName()))
- {
- main.saving.remove(p.getName());
- main.schild.get(p.getName());
- ((BukkitRunnable)main.schild.get(p.getName())).cancel();
- main.schild.remove(p.getName());
- p.sendMessage(main.prefix + "Dein Schutzschild wurde §4Deaktiviert§7.");
- return;
- }
- }
- }
- catch (Exception localException) {}
- }
- }
- @EventHandler
- public void onQuit(PlayerQuitEvent e)
- {
- Player p = e.getPlayer();
- if (main.saving.contains(p.getName()))
- {
- main.saving.remove(p.getName());
- main.schild.get(p.getName());
- ((BukkitRunnable)main.schild.get(p.getName())).cancel();
- main.schild.remove(p.getName());
- p.sendMessage(main.prefix + "Dein Schutzschild wurde §4Deaktiviert§7.");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement