package me.staartvin.statz.listeners; import me.staartvin.statz.Statz; import me.staartvin.statz.datamanager.player.PlayerStat; import me.staartvin.statz.datamanager.player.specification.PlayerStatSpecification; import me.staartvin.statz.datamanager.player.specification.TimesKickedSpecification; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.EventPriority; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerKickEvent; public class TimesKickedListener implements Listener { private final Statz plugin; public TimesKickedListener(final Statz plugin) { this.plugin = plugin; } @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onKick(final PlayerKickEvent event) { final PlayerStat stat = PlayerStat.TIMES_KICKED; // Get player final Player player = event.getPlayer(); // Do general check if (!plugin.doGeneralCheck(player, stat)) return; PlayerStatSpecification specification = new TimesKickedSpecification(player.getUniqueId(), 1, player.getWorld().getName(), event.getReason()); // Update value to new stat. plugin.getDataManager().setPlayerInfo(player.getUniqueId(), stat, specification.constructQuery()); } }