TrashGames/src/main/java/eu/univento/trashgames/listeners/JoinQuit.java

52 lines
1.7 KiB
Java

package eu.univento.trashgames.listeners;
import eu.univento.core.api.Utils;
import eu.univento.core.api.game.PlayerManager;
import eu.univento.core.api.player.CustomPlayer;
import eu.univento.core.api.player.SpectateManager;
import eu.univento.core.api.player.Spectator;
import eu.univento.trashgames.TrashGames;
import eu.univento.trashgames.game.GameState;
import org.bukkit.Particle;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent;
/**
* @author joethei
* @version 0.1
*/
public class JoinQuit implements Listener{
@EventHandler
public void onJoin(PlayerJoinEvent e) {
CustomPlayer p = CustomPlayer.getPlayer(e.getPlayer());
if(PlayerManager.size() > 2) {
new Spectator(p);
}else {
PlayerManager.add(p);
if(PlayerManager.size() == 2) {
//new GameCountdown();
}
}
p.spawnParticle(Particle.TOTEM, p.getLocation(), 1);
}
@EventHandler
public void onQuit(PlayerQuitEvent e) {
CustomPlayer p = CustomPlayer.getPlayer(e.getPlayer());
if(PlayerManager.contains(p)) {
PlayerManager.remove(p);
if(TrashGames.getState() == GameState.GAME) {
p.damage(99999D);
e.setQuitMessage(p.getDatabasePlayer().getRank().getColor() + p.getDisplayName() + " hat uns verlassen");
PlayerManager.getPlayers().get(0).getDatabasePlayer().addCoins(50);
Utils.restart();
}
}
if(SpectateManager.contains(p)) {
e.setQuitMessage(null);
}
}
}