From f36e5f143518d832b9890e4defcba5ca805a0403 Mon Sep 17 00:00:00 2001 From: ryanhamshire Date: Tue, 14 Jul 2015 18:13:33 -0700 Subject: [PATCH] Added notes for bans. --- .../GriefPrevention/PlayerEventHandler.java | 11 +++++++---- .../GriefPrevention/PlayerKickBanTask.java | 12 ++++++++++-- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java b/src/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java index d84c77c..ab71736 100644 --- a/src/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java +++ b/src/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java @@ -32,6 +32,8 @@ import java.util.regex.Pattern; import org.bukkit.Achievement; +import org.bukkit.BanList; +import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.Chunk; import org.bukkit.GameMode; @@ -39,6 +41,7 @@ import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.OfflinePlayer; import org.bukkit.TravelAgent; +import org.bukkit.BanList.Type; import org.bukkit.World.Environment; import org.bukkit.block.Block; import org.bukkit.block.BlockFace; @@ -335,7 +338,7 @@ class PlayerEventHandler implements Listener GriefPrevention.AddLogEntry("Banning " + player.getName() + " for spam.", CustomLogEntryTypes.AdminActivity); //kick and ban - PlayerKickBanTask task = new PlayerKickBanTask(player, GriefPrevention.instance.config_spam_banMessage, true); + PlayerKickBanTask task = new PlayerKickBanTask(player, GriefPrevention.instance.config_spam_banMessage, "GriefPrevention Anti-Spam",true); GriefPrevention.instance.getServer().getScheduler().scheduleSyncDelayedTask(GriefPrevention.instance, task, 1L); } else @@ -344,7 +347,7 @@ class PlayerEventHandler implements Listener GriefPrevention.AddLogEntry("Kicking " + player.getName() + " for spam.", CustomLogEntryTypes.AdminActivity); //just kick - PlayerKickBanTask task = new PlayerKickBanTask(player, "", false); + PlayerKickBanTask task = new PlayerKickBanTask(player, "", "GriefPrevention Anti-Spam", false); GriefPrevention.instance.getServer().getScheduler().scheduleSyncDelayedTask(GriefPrevention.instance, task, 1L); } @@ -725,7 +728,7 @@ class PlayerEventHandler implements Listener } //ban player - PlayerKickBanTask task = new PlayerKickBanTask(player, "", true); + PlayerKickBanTask task = new PlayerKickBanTask(player, "", "GriefPrevention Smart Ban - Shared Login:" + info.bannedAccountName, true); GriefPrevention.instance.getServer().getScheduler().scheduleSyncDelayedTask(GriefPrevention.instance, task, 10L); //silence join message @@ -753,7 +756,7 @@ class PlayerEventHandler implements Listener if(ipCount >= ipLimit) { //kick player - PlayerKickBanTask task = new PlayerKickBanTask(player, "Sorry, there are too many players logged in with your IP address.", false); + PlayerKickBanTask task = new PlayerKickBanTask(player, "Sorry, there are too many players logged in with your IP address.", "GriefPrevention IP-sharing limit.", false); GriefPrevention.instance.getServer().getScheduler().scheduleSyncDelayedTask(GriefPrevention.instance, task, 10L); //silence join message diff --git a/src/me/ryanhamshire/GriefPrevention/PlayerKickBanTask.java b/src/me/ryanhamshire/GriefPrevention/PlayerKickBanTask.java index b2b6985..6b352f5 100644 --- a/src/me/ryanhamshire/GriefPrevention/PlayerKickBanTask.java +++ b/src/me/ryanhamshire/GriefPrevention/PlayerKickBanTask.java @@ -18,6 +18,9 @@ package me.ryanhamshire.GriefPrevention; +import org.bukkit.BanList; +import org.bukkit.Bukkit; +import org.bukkit.BanList.Type; import org.bukkit.entity.Player; //kicks or bans a player @@ -31,13 +34,17 @@ class PlayerKickBanTask implements Runnable //message to send player. private String reason; + //source of ban + private String source; + //whether to ban private boolean ban; - public PlayerKickBanTask(Player player, String reason, boolean ban) + public PlayerKickBanTask(Player player, String reason, String source, boolean ban) { this.player = player; this.reason = reason; + this.source = source; this.ban = ban; } @@ -47,7 +54,8 @@ class PlayerKickBanTask implements Runnable if(this.ban) { //ban - this.player.setBanned(true); + BanList bans = Bukkit.getServer().getBanList(Type.NAME); + bans.addBan(this.player.getName(), this.reason, null, source); //kick if(this.player.isOnline())