Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.fightpvp.kits;
- import com.fightpvp.main.Fight;
- import com.fightpvp.managers.Kit;
- import com.fightpvp.managers.KitManager;
- import java.util.ArrayList;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Location;
- import org.bukkit.Material;
- import org.bukkit.World;
- import org.bukkit.block.Block;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandExecutor;
- import org.bukkit.command.CommandSender;
- 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.entity.EntityDamageEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.event.player.PlayerMoveEvent;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.PlayerInventory;
- import org.bukkit.scheduler.BukkitScheduler;
- public class Endermage
- implements CommandExecutor, Listener
- {
- private Fight plugin;
- public int task;
- public Endermage(Fight plugin)
- {
- this.plugin = plugin;
- }
- ArrayList<String> invencibility = new ArrayList();
- KitManager kitmg = KitManager.getKitManager();
- public static int x;
- public static int y;
- public static int z;
- public static Material m;
- public static Player player;
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
- {
- Player p = (Player)sender;
- if (label.equalsIgnoreCase("endermage")) {
- if (p.hasPermission("kit.endermage"))
- {
- if (this.kitmg.hasOneKit(p))
- {
- p.sendMessage("�cSomente 1 kit por vida !");
- }
- else
- {
- Kit a = this.kitmg.getKit(label.toLowerCase());
- a.addPlayer(p);
- this.kitmg.sendPlayerKitMessage(p);
- PlayerInventory pi = p.getInventory();
- pi.clear();
- pi.addItem(new ItemStack[] { new ItemStack(Material.WOOD_SWORD) });
- pi.addItem(new ItemStack[] { new ItemStack(Material.PORTAL) });
- pi.setChestplate(new ItemStack(Material.LEATHER_CHESTPLATE));
- for (int i = 0; i < 37; i++) {
- pi.addItem(new ItemStack[] { new ItemStack(Material.MUSHROOM_SOUP) });
- }
- }
- }
- else {
- p.sendMessage(ChatColor.RED + "Voce nao possue este kit !");
- }
- }
- return false;
- }
- @EventHandler
- public void teleport(PlayerMoveEvent event)
- {
- final Player p = event.getPlayer();
- if (((p.getLocation().getBlockX() == x + 1) ||
- (p.getLocation().getBlockX() == x - 1)) &&
- ((p.getLocation().getBlockY() > y + 2) ||
- (p.getLocation().getBlockY() < y - 2)) &&
- ((p.getLocation().getBlockZ() == z + 1) ||
- (p.getLocation().getBlockZ() == z - 1)) &&
- (p.getWorld()
- .getBlockAt(new Location(p.getWorld(), x, y, z))
- .getType() == Material.ENDER_PORTAL_FRAME)) {
- if (p != player)
- {
- Block b = p.getWorld().getBlockAt(
- new Location(p.getWorld(), x, y, z));
- p.teleport(new Location(p.getWorld(), x, y + 1, z));
- player.teleport(new Location(p.getWorld(), x, y + 1, z));
- b.setType(m);
- player.getInventory().addItem(
- new ItemStack[] { new ItemStack(Material.PORTAL) });
- this.invencibility.add(p.getName());
- this.invencibility.add(player.getName());
- p.sendMessage("�6Voc� foi teleportado por um Endermage! Voce tem 5 Segundos de Invencibilidade!");
- player.sendMessage("�6Voc� Puxou " + p.getName() +
- "! 5 Segundos De Invencibilidade!");
- Bukkit.getScheduler().cancelTask(this.task);
- Bukkit.getScheduler().scheduleSyncDelayedTask(this.plugin,
- new Runnable()
- {
- public void run()
- {
- Endermage.this.invencibility.remove(p.getName());
- Endermage.this.invencibility
- .remove(Endermage.player.getName());
- p.sendMessage("�6Sua Invencibilidade Acabou! Proteja-se!");
- Endermage.player
- .sendMessage("�6Sua Invencibilidade Acabou! Proteja-se!");
- }
- }, 100L);
- }
- }
- }
- @EventHandler
- public void invencibilidade(EntityDamageEvent event)
- {
- if (!(event.getEntity() instanceof Player)) {
- return;
- }
- Player e = (Player)event.getEntity();
- if (this.invencibility.contains(e.getName())) {
- event.setCancelled(true);
- }
- }
- @EventHandler
- public void endermage(PlayerInteractEvent event)
- {
- final Player p = event.getPlayer();
- Action a = event.getAction();
- final Block b = event.getClickedBlock();
- if ((p.getItemInHand().getType() == Material.PORTAL) &&
- (this.kitmg.hasAbility(p, "endermage")) &&
- (this.kitmg.hasAbility(p, "endermage")))
- {
- event.setCancelled(true);
- if (a == Action.RIGHT_CLICK_BLOCK)
- {
- p.getInventory().remove(p.getItemInHand());
- final Material bm = b.getType();
- final byte bb = b.getData();
- b.setType(Material.ENDER_PORTAL_FRAME);
- x = b.getX();
- y = b.getY();
- z = b.getZ();
- m = bm;
- player = p;
- this.task = Bukkit.getScheduler().scheduleSyncDelayedTask(
- this.plugin, new Runnable()
- {
- public void run()
- {
- b.setType(bm);
- b.setData(bb);
- p.getInventory().addItem(
- new ItemStack[] { new ItemStack(
- Material.PORTAL) });
- }
- }, 100L);
- }
- else if (a == Action.LEFT_CLICK_BLOCK)
- {
- p.getInventory().remove(p.getItemInHand());
- final Material bm = b.getType();
- final byte bb = b.getData();
- b.setType(Material.ENDER_PORTAL_FRAME);
- x = b.getX();
- y = b.getY();
- z = b.getZ();
- m = bm;
- player = p;
- this.task = Bukkit.getScheduler().scheduleSyncDelayedTask(
- this.plugin, new Runnable()
- {
- public void run()
- {
- b.setType(bm);
- b.setData(bb);
- p.getInventory().addItem(
- new ItemStack[] { new ItemStack(
- Material.PORTAL) });
- }
- }, 100L);
- }
- }
- }
- }
- package com.fightpvp.kits;
- import com.fightpvp.main.Fight;
- import com.fightpvp.managers.Kit;
- import com.fightpvp.managers.KitManager;
- import java.util.ArrayList;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Material;
- import org.bukkit.Server;
- import org.bukkit.World;
- import org.bukkit.block.Block;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandExecutor;
- import org.bukkit.command.CommandSender;
- 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.block.BlockIgniteEvent;
- import org.bukkit.event.block.BlockIgniteEvent.IgniteCause;
- import org.bukkit.event.entity.EntityDamageEvent;
- import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.PlayerInventory;
- import org.bukkit.scheduler.BukkitScheduler;
- public class Thor
- implements CommandExecutor, Listener
- {
- private Fight plugin;
- public Thor(Fight plugin)
- {
- this.plugin = plugin;
- }
- KitManager kitmg = KitManager.getKitManager();
- ArrayList<String> reload = new ArrayList();
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
- {
- Player p = (Player)sender;
- if (label.equalsIgnoreCase("thor")) {
- if (p.hasPermission("kit.thor"))
- {
- if (this.kitmg.hasOneKit(p))
- {
- p.sendMessage("��cSomente 1 kit por vida !");
- }
- else
- {
- Kit a = this.kitmg.getKit(label.toLowerCase());
- a.addPlayer(p);
- this.kitmg.sendPlayerKitMessage(p);
- PlayerInventory pi = p.getInventory();
- pi.clear();
- pi.addItem(new ItemStack[] { new ItemStack(Material.WOOD_SWORD) });
- pi.addItem(new ItemStack[] { new ItemStack(Material.GOLD_AXE) });
- pi.setChestplate(new ItemStack(Material.LEATHER_CHESTPLATE));
- for (int i = 0; i < 37; i++) {
- pi.addItem(new ItemStack[] { new ItemStack(Material.MUSHROOM_SOUP) });
- }
- }
- }
- else {
- p.sendMessage(ChatColor.RED + "Voce nao possue este kit !");
- }
- }
- return false;
- }
- @EventHandler
- public void onThor(PlayerInteractEvent e)
- {
- final Player p = e.getPlayer();
- if ((p.getItemInHand().getType() == Material.GOLD_AXE) &&
- (e.getAction() == Action.RIGHT_CLICK_BLOCK) &&
- (this.kitmg.hasAbility(p, "thor"))) {
- if (this.reload.contains(p.getName()))
- {
- p.sendMessage("��c��lSeu Thor esta em cooldown!");
- }
- else
- {
- p.getWorld().strikeLightning(p.getWorld().getHighestBlockAt(e.getClickedBlock().getLocation()).getLocation());
- this.reload.add(p.getName());
- Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this.plugin, new Runnable()
- {
- public void run()
- {
- Thor.this.reload.remove(p.getName());
- }
- }, 20L);
- }
- }
- }
- @EventHandler
- public void onEntityDamage(EntityDamageEvent e)
- {
- if (!(e.getEntity() instanceof Player)) {
- return;
- }
- Player p = (Player)e.getEntity();
- if ((this.kitmg.hasAbility(p, "thor")) &&
- (e.getCause() == EntityDamageEvent.DamageCause.LIGHTNING))
- {
- e.setDamage(0.0D);
- return;
- }
- }
- @EventHandler
- public void onIgnite(BlockIgniteEvent e)
- {
- if (e.getCause() == BlockIgniteEvent.IgniteCause.LIGHTNING) {
- e.setCancelled(true);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement