Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package Net.Garoto.Listener;
- import java.util.ArrayList;
- import java.util.Random;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.GameMode;
- import org.bukkit.Location;
- import org.bukkit.Material;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.EventPriority;
- import org.bukkit.event.Listener;
- import org.bukkit.event.entity.EntityDamageEvent;
- import org.bukkit.event.entity.PlayerDeathEvent;
- import org.bukkit.event.player.PlayerRespawnEvent;
- import Net.Garoto.Main;
- import Net.Garoto.manager.AbilityManager;
- public class PlayerDeathEvt implements Listener {
- public static ArrayList<Player> respawn = new ArrayList<Player>();
- @EventHandler
- public void onDeath(PlayerDeathEvent e) {
- e.setDeathMessage("");
- Player p = e.getEntity();
- if (p.hasPermission("hg.respawn")) {
- if(Main.jogo <= 5) {
- respawn.add(p);
- }
- } else {
- p.kickPlayer(ChatColor.RED + "Você morreu no " + ChatColor.AQUA + "Skill§aHG" + "\n" + ChatColor.GRAY + "Visite: " + ChatColor.RED + Main.site);
- }
- }
- public static void ChecarWin(Player p) {
- Main.morreu.add(p);
- Main.saiu.remove(p.getName());
- Main.login.add(p);
- Main.totalPlayers.remove(p.getName());
- }
- @SuppressWarnings({ "unused", "deprecation" })
- @EventHandler(priority = EventPriority.MONITOR)
- public void onPlayerRespawn(PlayerRespawnEvent event) {
- Player p = event.getPlayer();
- if ((respawn.contains(p)) && (Main.jogo <= 5)) {
- Location originalLocation = p.getLocation();
- Random random = new Random();
- Location teleportLocation = null;
- int x = random.nextInt(400) + 1;
- int y = 150;
- int z = random.nextInt(400) + 1;
- boolean isOnLand = false;
- while (!isOnLand) {
- teleportLocation = new Location(p.getWorld(), x, y, z);
- if (teleportLocation.getBlock().getType() != Material.AIR)
- isOnLand = true;
- else y--;
- }
- GameListener.verificaWin();
- int respawntime = 5 - Main.jogo;
- event.setRespawnLocation(teleportLocation);
- p.sendMessage(ChatColor.GREEN + "Você respawnou!\nVocê tem " + ChatColor.AQUA + respawntime + ChatColor.AQUA + " minutos para respawnar!");
- p.setGameMode(GameMode.SURVIVAL);
- p.setHealth(20.0D);
- p.setFoodLevel(20);
- p.setNoDamageTicks(120);
- if(p.hasPermission("hg.r.kit")) {
- GiveItens.giveItens(event.getPlayer());
- p.updateInventory();
- }
- } else if(Main.jogo >= 6 && p.hasPermission("hg.spec") && !p.hasPermission("hg.admin")) {
- p.teleport(p.getLocation());
- Main.morreu.add(p);
- Main.saiu.remove(p.getName());
- Main.login.add(p);
- Main.totalPlayers.remove(p.getName());
- GameListener.espectadores.add(p.getName());
- p.getAllowFlight();
- p.setAllowFlight(true);
- p.sendMessage(ChatColor.GOLD + "Você morreu e entrou no modo §cEspectador");
- p.sendMessage(ChatColor.GOLD + "Tenha um bom senso nao atrapalhe os jogadores!");
- GameListener.verificaWin();
- for(Player p1 : Bukkit.getOnlinePlayers()) {
- p1.hidePlayer(p);
- }
- } else if(Main.jogo >= 6 && p.hasPermission("hg.admin")) {
- p.teleport(p.getLocation());
- Main.morreu.add(p);
- Main.saiu.remove(p.getName());
- Main.login.add(p);
- GameListener.espectadores.remove(p.getName());
- Main.totalPlayers.remove(p.getName());
- p.chat("/admin");
- GameListener.verificaWin();
- for(Player p1 : Bukkit.getOnlinePlayers()) {
- p1.hidePlayer(p);
- }
- } else {
- p.kickPlayer(ChatColor.RED + "Partida em progresso!" + "\n" + ChatColor.GRAY + "Visite " + ChatColor.GREEN + Main.site);
- Main.morreu.add(p);
- Main.saiu.remove(p.getName());
- Main.login.add(p);
- Main.totalPlayers.remove(p.getName());
- }
- }
- @EventHandler(priority = EventPriority.MONITOR)
- public void onPlayerDeath(final PlayerDeathEvent event) {
- Bukkit.getScheduler().scheduleSyncDelayedTask(Main.instance, new Runnable() {
- @SuppressWarnings("deprecation")
- public void run() {
- final Player p = event.getEntity();
- EntityDamageEvent cause = p.getLastDamageCause();
- EntityDamageEvent.DamageCause causa = cause.getCause();
- final String KitName = Main.kitnome(AbilityManager.getAbility(p));
- if (causa == EntityDamageEvent.DamageCause.FALL) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " nunca ouviu falar em escadas!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.CONTACT) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu por um cacto!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.DROWNING) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu afogado!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.LAVA) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " estava brincando muito perto da lava!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.SUFFOCATION) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu sufocado por blocos!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.FIRE) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " tostou como uma carne assada!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.POISON) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu envenenado!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.FIRE_TICK) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " Queimou igual batatinha!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.SUICIDE) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " Se suicidou!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.LIGHTNING) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu pelos raios dos ceus!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.STARVATION) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu de fome!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.WITHER) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu em decomposicao!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.BLOCK_EXPLOSION) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu explodido em mil pedacos!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.WITHER) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu pelo efeito do Wither!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.PROJECTILE) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu por uma flecha!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.VOID) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu para o void!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.ENTITY_EXPLOSION) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + " (" + KitName + ")" + ChatColor.YELLOW + " morreu explodido em mil pedacos!" + "\n" +
- ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.");
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- } else if (causa == EntityDamageEvent.DamageCause.ENTITY_ATTACK) {
- Bukkit.broadcastMessage(ChatColor.GRAY + p.getName() + ChatColor.AQUA + "(" + Main.kitnome(AbilityManager.getAbility(p) + ")"
- + ChatColor.YELLOW + " foi morto por " + ChatColor.GRAY + p.getKiller().getName()
- + ChatColor.AQUA + "(" + Main.kitnome(AbilityManager.getAbility(p.getKiller()) + ")" + ChatColor.YELLOW + " com " + GameListener.NomeDosItens(p.getKiller().getItemInHand())
- + "\n" + ChatColor.RED + Main.totalPlayers.size() + " jogadores restantes.")));
- Bukkit.getOfflinePlayer(p.getName()).setWhitelisted(false);
- Bukkit.reloadWhitelist();
- GameListener.verificaWin();
- ChecarWin(p);
- }
- }
- },10L);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement