From d71b043102643928a685e7a2119261d6013d24bb Mon Sep 17 00:00:00 2001 From: JeromSar Date: Sat, 24 Aug 2013 21:35:09 +0200 Subject: [PATCH] Added unbannable usernames (defined in config) Changed all raw Lists in config to StringLists --- appinfo.properties | 6 ++-- buildnumber.properties | 4 +-- src/config.yml | 31 +++++++++++++++++++ .../TotalFreedomMod/TFM_CommandBlocker.java | 2 +- .../TotalFreedomMod/TFM_Config.java | 2 +- .../TotalFreedomMod/TFM_ConfigEntry.java | 7 +++-- .../StevenLawson/TotalFreedomMod/TFM_Log.java | 8 ++--- .../TotalFreedomMod/TFM_ServerInterface.java | 19 ++++++++++-- .../TotalFreedomMod/TFM_Util.java | 2 +- 9 files changed, 64 insertions(+), 17 deletions(-) diff --git a/appinfo.properties b/appinfo.properties index d4b30d9c..e4e8cc0f 100644 --- a/appinfo.properties +++ b/appinfo.properties @@ -1,5 +1,5 @@ -#Fri, 23 Aug 2013 21:18:29 -0400 +#Sat, 24 Aug 2013 21:25:38 +0200 program.VERSION=3.1 -program.BUILDNUM=479 -program.BUILDDATE=08/23/2013 09\:18 PM +program.BUILDNUM=481 +program.BUILDDATE=08/24/2013 09\:25 PM diff --git a/buildnumber.properties b/buildnumber.properties index af675bf9..723391df 100644 --- a/buildnumber.properties +++ b/buildnumber.properties @@ -1,3 +1,3 @@ #Build Number for ANT. Do not edit! -#Fri Aug 23 21:18:29 EDT 2013 -build.number=480 +#Sat Aug 24 21:25:38 CEST 2013 +build.number=482 diff --git a/src/config.yml b/src/config.yml index 77229424..23e3b2e6 100644 --- a/src/config.yml +++ b/src/config.yml @@ -124,6 +124,37 @@ host_sender_names: - rcon - remotebukkit +# Players who cannot be banned by username +unbannable_usernames: + - honeydew + - xephos + - captainsparklez + - truemu + - kiershar + - fvdisco + - sethbling + - notch + - jeb_ + - gamechap + - bertiechap + - vechs + - antvenom + - chimneyswift + - deadmau5 + - etho + - skydoesminecraft + - tobyturner + - xxslyfoxhoundxx + - paulsoaresjr + - sips_ + - deadlox + - xxslyxx + - jeromeasf + - dinnerbone + - grumm + - cavemanfilms + + # TwitterBot - Used to allow superadmins to verify themselves using twitter twitterbot_enabled: false twitterbot_url: '' diff --git a/src/me/StevenLawson/TotalFreedomMod/TFM_CommandBlocker.java b/src/me/StevenLawson/TotalFreedomMod/TFM_CommandBlocker.java index 00d516ae..cbceb0ea 100644 --- a/src/me/StevenLawson/TotalFreedomMod/TFM_CommandBlocker.java +++ b/src/me/StevenLawson/TotalFreedomMod/TFM_CommandBlocker.java @@ -33,7 +33,7 @@ public class TFM_CommandBlocker return; } - List _blockedCommands = (List) TFM_ConfigEntry.BLOCKED_COMMANDS.getList(); + List _blockedCommands = (List) TFM_ConfigEntry.BLOCKED_COMMANDS.getStringList(); for (String rawEntry : _blockedCommands) { String[] parts = rawEntry.split(":"); diff --git a/src/me/StevenLawson/TotalFreedomMod/TFM_Config.java b/src/me/StevenLawson/TotalFreedomMod/TFM_Config.java index 38d26b6f..896af6c9 100644 --- a/src/me/StevenLawson/TotalFreedomMod/TFM_Config.java +++ b/src/me/StevenLawson/TotalFreedomMod/TFM_Config.java @@ -189,7 +189,7 @@ public class TFM_Config } } - public List getList(TFM_ConfigEntry entry) + public List getStringList(TFM_ConfigEntry entry) { try { diff --git a/src/me/StevenLawson/TotalFreedomMod/TFM_ConfigEntry.java b/src/me/StevenLawson/TotalFreedomMod/TFM_ConfigEntry.java index 552489e9..3672b3af 100644 --- a/src/me/StevenLawson/TotalFreedomMod/TFM_ConfigEntry.java +++ b/src/me/StevenLawson/TotalFreedomMod/TFM_ConfigEntry.java @@ -49,7 +49,8 @@ public enum TFM_ConfigEntry TWITTERBOT_URL(String.class, "twitterbot_url"), // BLOCKED_COMMANDS(List.class, "blocked_commands"), - HOST_SENDER_NAMES(List.class, "host_sender_names"); + HOST_SENDER_NAMES(List.class, "host_sender_names"), + UNBANNABLE_USERNAMES(List.class, "unbannable_usernames"); // private final Class type; private final String configName; @@ -114,8 +115,8 @@ public enum TFM_ConfigEntry return value; } - public List getList() + public List getStringList() { - return TFM_Config.getInstance().getList(this); + return TFM_Config.getInstance().getStringList(this); } } diff --git a/src/me/StevenLawson/TotalFreedomMod/TFM_Log.java b/src/me/StevenLawson/TotalFreedomMod/TFM_Log.java index 35877e95..ee82af94 100644 --- a/src/me/StevenLawson/TotalFreedomMod/TFM_Log.java +++ b/src/me/StevenLawson/TotalFreedomMod/TFM_Log.java @@ -14,7 +14,7 @@ public class TFM_Log throw new AssertionError(); } - //Level.INFO: + // Level.INFO: public static void info(String message) { info(message, false); @@ -30,7 +30,7 @@ public class TFM_Log log(Level.INFO, ex); } - //Level.WARNING: + // Level.WARNING: public static void warning(String message) { info(message, false); @@ -46,7 +46,7 @@ public class TFM_Log log(Level.WARNING, ex); } - //Level.SEVERE: + // Level.SEVERE: public static void severe(String message) { info(message, false); @@ -62,7 +62,7 @@ public class TFM_Log log(Level.SEVERE, ex); } - //Utility + // Utility private static void log(Level level, String message, boolean raw) { getLogger(raw).log(level, message); diff --git a/src/me/StevenLawson/TotalFreedomMod/TFM_ServerInterface.java b/src/me/StevenLawson/TotalFreedomMod/TFM_ServerInterface.java index 8e29d0c6..967001a5 100644 --- a/src/me/StevenLawson/TotalFreedomMod/TFM_ServerInterface.java +++ b/src/me/StevenLawson/TotalFreedomMod/TFM_ServerInterface.java @@ -3,6 +3,7 @@ package me.StevenLawson.TotalFreedomMod; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Iterator; +import java.util.List; import java.util.Set; import java.util.regex.Pattern; import net.minecraft.server.v1_6_R2.BanEntry; @@ -50,6 +51,22 @@ public class TFM_ServerInterface public static void banUsername(String name, String reason, String source, Date expire_date) { name = name.toLowerCase().trim(); + + if (TFM_SuperadminList.getSuperadminNames().contains(name)) + { + TFM_Log.info("Not banning username " + name + ": is superadmin"); + return; + } + + for (String username : TFM_ConfigEntry.UNBANNABLE_USERNAMES.getStringList()) + { + if (username.toLowerCase().trim().equals(name)) + { + TFM_Log.info("Not banning username " + name + ": is unbannable as defined in config."); + return; + } + } + BanEntry ban_entry = new BanEntry(name); if (expire_date != null) { @@ -110,7 +127,6 @@ public class TFM_ServerInterface return ipBans.getEntries().containsKey(ip); } - @SuppressWarnings("rawtypes") public static int purgeWhitelist() { Set whitelisted = MinecraftServer.getServer().getPlayerList().getWhitelisted(); @@ -181,7 +197,6 @@ public class TFM_ServerInterface boolean is_ip_banned = false; - @SuppressWarnings("rawtypes") Iterator ip_bans = banByIP.getEntries().keySet().iterator(); while (ip_bans.hasNext()) { diff --git a/src/me/StevenLawson/TotalFreedomMod/TFM_Util.java b/src/me/StevenLawson/TotalFreedomMod/TFM_Util.java index 56eb25d3..a36d0f2e 100644 --- a/src/me/StevenLawson/TotalFreedomMod/TFM_Util.java +++ b/src/me/StevenLawson/TotalFreedomMod/TFM_Util.java @@ -746,7 +746,7 @@ public class TFM_Util @SuppressWarnings("unchecked") public static boolean isFromHostConsole(String sender_name) { - return ((List) TFM_ConfigEntry.HOST_SENDER_NAMES.getList()).contains(sender_name.toLowerCase()); + return ((List) TFM_ConfigEntry.HOST_SENDER_NAMES.getStringList()).contains(sender_name.toLowerCase()); } public static List removeDuplicates(List old_list)