Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.gravenilvec.Coins;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.util.HashMap;
- import java.util.Map;
- import java.util.UUID;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.player.AsyncPlayerChatEvent;
- import org.bukkit.event.player.AsyncPlayerPreLoginEvent;
- import org.bukkit.event.player.AsyncPlayerPreLoginEvent.Result;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.event.player.PlayerQuitEvent;
- import org.bukkit.plugin.java.JavaPlugin;
- import net.gravenilvec.Coins.commands.CmdBan;
- import net.gravenilvec.Coins.commands.CmdCoins;
- import net.gravenilvec.cache.BanPlayerData;
- import net.gravenilvec.cache.PlayerData;
- import net.gravenilvec.cache.PlayerDataManager;
- import net.gravenilvec.grades.Rank;
- public class Coins extends JavaPlugin implements Listener{
- public SqlConnection sql;
- public PlayerDataManager dataManager = new PlayerDataManager(this);
- public Map<Player, PlayerData> dataPlayers = new HashMap<>();
- public Map<UUID, BanPlayerData> bannis = new HashMap<>();
- public void onEnable(){
- sql = new SqlConnection(this, "jdbc:mysql://","localhost","servermc","root","");
- sql.connection();
- getServer().getPluginManager().registerEvents(this, this);
- getCommand("money").setExecutor(new CmdCoins(sql));
- getCommand("bandef").setExecutor(new CmdBan(this));
- getCommand("unban").setExecutor(new CmdBan(this));
- loadBannedPlayers();
- }
- private void loadBannedPlayers() {
- try {
- PreparedStatement q = sql.getConnection().prepareStatement("SELECT uuid, reason, expiredate FROM bannis WHERE CURDATE() < expiredate");
- ResultSet resultat = q.executeQuery();
- while(resultat.next()){
- UUID uuid = UUID.fromString(resultat.getString("uuid"));
- String reason = resultat.getString("reason");
- BanPlayerData ban = new BanPlayerData();
- ban.setReason(reason);
- ban.setUuid(uuid);
- bannis.put(uuid, ban);
- }
- q.execute();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- System.out.println(bannis.size() + " joueurs ont été bannis sur le serveur !");
- }
- public void onDisable(){
- sql.disconnect();
- }
- @EventHandler
- public void prejoin(AsyncPlayerPreLoginEvent e){
- UUID uuid = e.getUniqueId();
- if(bannis.containsKey(uuid)){
- //le joueur qui essaye de se co est ban !
- BanPlayerData ban = bannis.get(uuid);
- String reason = ban.getReason();
- e.setKickMessage("Vous avez été ban pour " +reason);
- e.setLoginResult(Result.KICK_BANNED);
- }
- }
- @EventHandler
- public void join(PlayerJoinEvent e){
- Player p = e.getPlayer();
- sql.createAccount(p);
- dataManager.loadPlayerData(p);
- }
- @EventHandler
- public void quit(PlayerQuitEvent e){
- Player p = e.getPlayer();
- dataManager.savePlayerData(p);
- }
- @EventHandler
- public void chat(AsyncPlayerChatEvent e){
- Player p = e.getPlayer();
- Rank rank = sql.getRank(p);
- e.setFormat(rank.getName() + " " + p.getName() + " : " + rank.getTag() + e.getMessage());
- }
- }
Add Comment
Please, Sign In to add comment