Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.goksi.extremevent;
- import java.util.HashMap;
- import java.util.Map;
- import org.bukkit.Bukkit;
- import org.bukkit.Location;
- import org.bukkit.World;
- 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.entity.PlayerDeathEvent;
- import org.bukkit.event.player.PlayerCommandPreprocessEvent;
- import org.bukkit.event.player.PlayerRespawnEvent;
- import org.bukkit.inventory.ItemStack;
- import net.md_5.bungee.api.ChatColor;
- public class Pvp implements CommandExecutor, Listener {
- Commands cmds;
- public Pvp(Commands ins) {
- cmds = ins;
- }
- Map<Player, ItemStack[]> items = new HashMap<Player, ItemStack[]>();
- Map<Player, ItemStack[]> armor = new HashMap<Player, ItemStack[]>();
- @Override
- public boolean onCommand(CommandSender sender, Command cmd, String lbl, String[] args) {
- if(cmds.event) {
- Player p = (Player) sender;
- if(cmds.mrtv.contains(p)) {
- p.sendMessage(ChatColor.translateAlternateColorCodes('&', cmds.pl.getConfig().getString("mrtav")));
- return true;
- } else {
- cmds.igr.add(p);
- clearInv(p);
- World w = Bukkit.getServer().getWorld("world");
- int x = cmds.pl.getConfig().getInt("arenaX");
- int y = cmds.pl.getConfig().getInt("arenaY");
- int z = cmds.pl.getConfig().getInt("arenaZ");
- Location arena = new Location(w, x, y, z);
- p.teleport(arena);
- }
- }else {
- sender.sendMessage(ChatColor.translateAlternateColorCodes('&', cmds.pl.getConfig().getString("eventDisable")));
- return true;
- }
- return false;
- }
- public void clearInv(Player p) {
- ItemStack[] contents = p.getInventory().getContents();
- ItemStack[] armorContents = p.getInventory().getArmorContents();
- items.put(p, contents);
- armor.put(p, armorContents);
- p.getInventory().clear();
- p.getInventory().setHelmet(null);
- p.getInventory().setChestplate(null);
- p.getInventory().setLeggings(null);
- p.getInventory().setBoots(null);
- }
- public void loadInv(Player p) {
- ItemStack[] contents = items.get(p);
- ItemStack[] armorContents = armor.get(p);
- p.getInventory().setContents(contents);
- p.getInventory().setArmorContents(armorContents);
- armor.remove(p);
- items.remove(p);
- }
- @EventHandler
- public void onDeath(PlayerDeathEvent e) {
- Player p = e.getEntity();
- int ostalo = cmds.igr.size();
- if(cmds.igr.contains(p)) {
- cmds.igr.remove(p);
- cmds.mrtv.add(p);
- } else if(ostalo == 1) {
- Player win = cmds.igr.get(0);
- int x = cmds.pl.getConfig().getInt("spawnX");
- int y = cmds.pl.getConfig().getInt("spawnY");
- int z = cmds.pl.getConfig().getInt("spawnZ");
- World w = win.getWorld();
- Location spawn = new Location(w, x, y, z);
- win.teleport(spawn);
- this.clearInv(win);
- this.loadInv(win);
- cmds.igr.remove(win);
- cmds.mrtv.add(p);
- Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', cmds.pl.getConfig().getString("win").replaceAll("%igrac%", win.getName())));
- } else return;
- }
- public void onRespawn(PlayerRespawnEvent e) {
- Player p = e.getPlayer();
- if(!(armor.get(p) == null) && !(items.get(p) == null)) {
- loadInv(p);
- } else return;
- }
- public void onCommand(PlayerCommandPreprocessEvent e) {
- Player p = e.getPlayer();
- if(cmds.igr.contains(p)) {
- String command = e.getMessage();
- if (cmds.pl.getBc().contains(command)) {
- e.setCancelled(true);
- p.sendMessage(ChatColor.translateAlternateColorCodes('&', cmds.pl.getConfig().getString("cmdEvent")));
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement