TeamVento/src/main/java/eu/univento/teamvento/listener/JoinQuit.java

75 lines
2.7 KiB
Java
Raw Normal View History

2018-01-15 12:27:22 +01:00
/*
* Copyright (c) 2018 univento.eu - All rights reserved
* You are not allowed to use, distribute or modify this code
*/
2016-04-30 07:38:37 +02:00
package eu.univento.teamvento.listener;
2018-01-15 12:27:22 +01:00
import eu.univento.commons.player.rank.Rank;
2016-04-30 07:38:37 +02:00
import eu.univento.core.api.player.CustomPlayer;
2017-06-04 13:47:12 +02:00
import eu.univento.teamvento.plot.Plot;
import eu.univento.teamvento.plot.PlotManager;
2016-04-30 07:38:37 +02:00
import org.bukkit.Bukkit;
2018-01-15 12:27:22 +01:00
import org.bukkit.Location;
2016-07-09 13:19:56 +02:00
import org.bukkit.Material;
2016-04-30 07:38:37 +02:00
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent;
2016-07-09 13:19:56 +02:00
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
2016-04-30 07:38:37 +02:00
/**
* @author joethei
2018-01-15 12:27:22 +01:00
* @version 1.0
2016-04-30 07:38:37 +02:00
*/
public class JoinQuit implements Listener {
2017-06-04 13:47:12 +02:00
//public static final HashMap<CustomPlayer, Hologram> holograms = new HashMap<>();
2016-07-09 13:19:56 +02:00
2016-04-30 07:38:37 +02:00
@EventHandler
public void onJoin(PlayerJoinEvent e) {
CustomPlayer p = CustomPlayer.getPlayer(e.getPlayer());
e.setJoinMessage(null);
2018-01-15 12:27:22 +01:00
p.getDatabasePlayer().getRankAsync().whenComplete((rank, throwable) -> Bukkit.broadcastMessage(p.getDatabasePlayer().getRank().getPrefix() + p.getName() + "§7ist beigetreten"));
2017-06-04 13:47:12 +02:00
if (PlotManager.hasPlot(p)) {
Plot plot = PlotManager.getPlotByPlayer(p);
assert plot != null;
2017-06-04 13:47:12 +02:00
if (!plot.isReady()) {
ItemStack menu = new ItemStack(Material.WATCH);
ItemMeta menuMeta = menu.getItemMeta();
menuMeta.setDisplayName("§eErweiterungen");
menu.setItemMeta(menuMeta);
p.getInventory().setItem(8, menu);
}
2016-07-09 13:19:56 +02:00
}
2018-01-15 12:27:22 +01:00
p.getDatabasePlayer().getRankAsync().whenComplete((rank, throwable) -> {
if(rank == Rank.Player) p.teleport(new Location(Bukkit.getWorld("plots"), 11.4D, 24.0D, 25.5D, -90.5F, 1.5F));
});
2016-07-09 13:19:56 +02:00
2017-06-04 13:47:12 +02:00
/*
2016-07-09 13:19:56 +02:00
String[] text;
if(PlotManager.hasPlot(p))
text = new String[]{"§eZu deinem Plot teleportieren", "|", "|", ""};
else
text = new String[]{"§eNeues Plot erstellen", "|", "|", "",};
2017-06-04 13:47:12 +02:00
2016-07-09 13:19:56 +02:00
Bukkit.getScheduler().runTaskTimerAsynchronously(TeamVento.getInstance(), () -> p.playParticle(Config.readLocation("Build.Locs.Holo").add(0.0D, 1.0D, 0.0D), EnumParticle.SPELL_WITCH, 0.4F, 10), 20L, 5L);
2016-11-24 20:00:03 +01:00
Hologram holo = new Hologram(new ItemStack(Material.GRASS), text, Config.readLocation("Build.Locs.Holo"));
2016-07-09 13:19:56 +02:00
holograms.put(p, holo);
holo.showPlayer(p);
2018-01-15 12:27:22 +01:00
2017-06-04 13:47:12 +02:00
*/
2018-01-15 12:27:22 +01:00
2016-04-30 07:38:37 +02:00
}
@EventHandler
public void onQuit(PlayerQuitEvent e) {
CustomPlayer p = CustomPlayer.getPlayer(e.getPlayer());
2018-01-15 12:27:22 +01:00
e.setQuitMessage(p.getDatabasePlayer().getRank().getPrefix() + p.getName() + "§7ist von uns gegangen");
2017-06-04 13:47:12 +02:00
//holograms.remove(p);
2016-04-30 07:38:37 +02:00
}
}