From 941bbc8da3b1c22b50366805e48ffd808c60554f Mon Sep 17 00:00:00 2001 From: Telesphoreo Date: Mon, 30 Jul 2018 00:23:01 -0700 Subject: [PATCH] OPs can now have persistent tags (#108) * new high end piece of software - refactor all the shit to isEnabled - idk debug - gotta keep the messages consistent - worldedit :b: roke - lockup description - add /nh as an alias for namehistory - yo /setl actually checks for w/e now cool - gtfo and unban now are less bugs - /whitelist is no longer written in tfm43 code and in beta - l a m b a d a in help - enable the bridges - i worked on a converter for the login messages but then seth already made it work so fuck me i wasted an hour of my life * whitelist * i enabled them for testing * OPs can now have persistent tags! * Summary (required) --- .../totalfreedommod/AutoKick.java | 2 +- .../totalfreedommod/ChatManager.java | 1 - .../totalfreedom/totalfreedommod/Fuckoff.java | 2 - .../totalfreedommod/admin/Admin.java | 1 - .../totalfreedommod/admin/AdminList.java | 2 - .../bridge/EssentialsBridge.java | 56 ++++++++---------- .../bridge/WorldEditBridge.java | 18 ------ .../bridge/WorldEditListener.java | 1 - .../bridge/WorldGuardBridge.java | 18 ++---- .../command/Command_debug.java | 2 +- .../command/Command_denick.java | 2 +- .../command/Command_disguisetoggle.java | 2 +- .../totalfreedommod/command/Command_gtfo.java | 6 +- .../totalfreedommod/command/Command_kick.java | 3 +- .../command/Command_linkdiscord.java | 8 +-- .../command/Command_localspawn.java | 1 - .../command/Command_lockup.java | 3 +- .../command/Command_myadmin.java | 4 +- .../command/Command_namehistory.java | 3 +- .../command/Command_playerverify.java | 58 ++++++++++++++----- .../command/Command_setlimit.java | 22 ++++--- .../command/Command_tprandom.java | 5 +- .../command/Command_unban.java | 5 +- .../command/Command_unlinkdiscord.java | 12 ++-- .../command/Command_verify.java | 16 ++--- .../command/Command_whitelist.java | 45 ++++++-------- .../command/Command_wipeflatlands.java | 2 +- .../command/Command_wiperegions.java | 2 +- .../command/Command_wipeuserdata.java | 2 +- .../command/Command_wipewarps.java | 2 +- .../totalfreedommod/config/ConfigEntry.java | 2 - .../discord/MessageListener.java | 1 - .../httpd/module/Module_help.java | 7 +-- .../httpd/module/Module_logfile.java | 2 +- .../httpd/module/Module_punishments.java | 5 +- .../totalfreedommod/player/PlayerData.java | 5 -- .../playerverification/VPlayer.java | 8 ++- .../totalfreedommod/rank/RankManager.java | 14 ++++- .../util/DepreciationAggregator.java | 6 +- src/main/resources/version.yml | 2 +- 40 files changed, 165 insertions(+), 193 deletions(-) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/AutoKick.java b/src/main/java/me/totalfreedom/totalfreedommod/AutoKick.java index 63d5538c..29150ed4 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/AutoKick.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/AutoKick.java @@ -52,7 +52,7 @@ public class AutoKick extends FreedomService private void autoKickCheck() { final boolean doAwayKickCheck - = plugin.esb.isEssentialsEnabled() + = plugin.esb.isEnabled() && ((server.getOnlinePlayers().size() / server.getMaxPlayers()) > autoKickThreshold); if (!doAwayKickCheck) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/ChatManager.java b/src/main/java/me/totalfreedom/totalfreedommod/ChatManager.java index 7c242515..f74c8f06 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/ChatManager.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/ChatManager.java @@ -177,5 +177,4 @@ public class ChatManager extends FreedomService } } } - } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/Fuckoff.java b/src/main/java/me/totalfreedom/totalfreedommod/Fuckoff.java index bc1cb25e..fc34aa83 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/Fuckoff.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/Fuckoff.java @@ -9,7 +9,6 @@ import org.bukkit.event.player.PlayerMoveEvent; public class Fuckoff extends FreedomService { - public Fuckoff(TotalFreedomMod plugin) { super(plugin); @@ -64,5 +63,4 @@ public class Fuckoff extends FreedomService } } } - } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/admin/Admin.java b/src/main/java/me/totalfreedom/totalfreedommod/admin/Admin.java index 329f673c..6007ecd4 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/admin/Admin.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/admin/Admin.java @@ -122,7 +122,6 @@ public class Admin implements ConfigLoadable, ConfigSavable, Validatable acFormat = cs.getString("acformat", null); oldTags = cs.getBoolean("oldtags", false); logStick = cs.getBoolean("logstick", false); - } @Override diff --git a/src/main/java/me/totalfreedom/totalfreedommod/admin/AdminList.java b/src/main/java/me/totalfreedom/totalfreedommod/admin/AdminList.java index 089e4b10..291f5d42 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/admin/AdminList.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/admin/AdminList.java @@ -194,8 +194,6 @@ public class AdminList extends FreedomService } return admin; } - - // Impostor } // Admin by ip diff --git a/src/main/java/me/totalfreedom/totalfreedommod/bridge/EssentialsBridge.java b/src/main/java/me/totalfreedom/totalfreedommod/bridge/EssentialsBridge.java index b41f78d4..56706880 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/bridge/EssentialsBridge.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/bridge/EssentialsBridge.java @@ -1,26 +1,26 @@ package me.totalfreedom.totalfreedommod.bridge; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.event.inventory.InventoryCloseEvent; -import org.bukkit.event.EventPriority; -import org.bukkit.event.EventHandler; -import me.totalfreedom.totalfreedommod.rank.Rank; -import org.bukkit.inventory.InventoryHolder; -import me.totalfreedom.totalfreedommod.player.FPlayer; -import org.bukkit.inventory.Inventory; -import org.bukkit.scheduler.BukkitRunnable; -import org.bukkit.entity.HumanEntity; -import org.bukkit.event.inventory.InventoryType; -import org.bukkit.entity.Player; -import org.bukkit.event.inventory.InventoryClickEvent; -import me.totalfreedom.totalfreedommod.util.FUtil; -import com.earth2me.essentials.User; -import org.bukkit.plugin.Plugin; -import me.totalfreedom.totalfreedommod.util.FLog; -import me.totalfreedom.totalfreedommod.command.Command_vanish; -import me.totalfreedom.totalfreedommod.TotalFreedomMod; import com.earth2me.essentials.Essentials; +import com.earth2me.essentials.User; import me.totalfreedom.totalfreedommod.FreedomService; +import me.totalfreedom.totalfreedommod.TotalFreedomMod; +import me.totalfreedom.totalfreedommod.command.Command_vanish; +import me.totalfreedom.totalfreedommod.player.FPlayer; +import me.totalfreedom.totalfreedommod.rank.Rank; +import me.totalfreedom.totalfreedommod.util.FLog; +import me.totalfreedom.totalfreedommod.util.FUtil; +import org.bukkit.entity.HumanEntity; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.event.inventory.InventoryCloseEvent; +import org.bukkit.event.inventory.InventoryType; +import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.InventoryHolder; +import org.bukkit.plugin.Plugin; +import org.bukkit.scheduler.BukkitRunnable; public class EssentialsBridge extends FreedomService { @@ -221,20 +221,10 @@ public class EssentialsBridge extends FreedomService } } - public boolean isEssentialsEnabled() + public boolean isEnabled() { - try - { - Essentials essentials = getEssentialsPlugin(); - if (essentials != null) - { - return essentials.isEnabled(); - } - } - catch (Exception ex) - { - FLog.severe(ex); - } - return false; + final Essentials ess = getEssentialsPlugin(); + + return ess != null && ess.isEnabled(); } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditBridge.java b/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditBridge.java index 8091b72c..2b1220ee 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditBridge.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditBridge.java @@ -1,7 +1,6 @@ package me.totalfreedom.totalfreedommod.bridge; import com.sk89q.worldedit.LocalSession; -import com.sk89q.worldedit.WorldEdit; import com.sk89q.worldedit.bukkit.BukkitPlayer; import com.sk89q.worldedit.bukkit.WorldEditPlugin; import me.totalfreedom.totalfreedommod.FreedomService; @@ -159,21 +158,4 @@ public class WorldEditBridge extends FreedomService return null; } } - - public boolean isWorldEditEnabled() - { - try - { - WorldEditPlugin worldedit = getWorldEditPlugin(); - if (worldedit != null) - { - return worldedit.isEnabled(); - } - } - catch (Exception ex) - { - FLog.severe(ex); - } - return false; - } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditListener.java b/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditListener.java index 481e148b..ce55d87e 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditListener.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditListener.java @@ -32,7 +32,6 @@ public class WorldEditListener extends PluginListener event.getMaxVector(), event.getWorld().getName())) { - player.sendMessage(ChatColor.RED + "The region that you selected contained a protected area. Selection cleared."); event.setCancelled(true); } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldGuardBridge.java b/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldGuardBridge.java index 6a13fbcb..40246f5b 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldGuardBridge.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldGuardBridge.java @@ -69,20 +69,10 @@ public class WorldGuardBridge extends FreedomService return false; } - public boolean isPluginEnabled() + public boolean isEnabled() { - try - { - WorldGuardPlugin wg = getWorldGuardPlugin(); - if (wg != null) - { - return wg.isEnabled(); - } - } - catch (Exception ex) - { - FLog.severe(ex); - } - return false; + final WorldGuardPlugin wg = getWorldGuardPlugin(); + + return wg != null && wg.isEnabled(); } } \ No newline at end of file diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_debug.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_debug.java index 83467786..7af987a2 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_debug.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_debug.java @@ -29,7 +29,7 @@ public class Command_debug extends FreedomCommand if (className.equalsIgnoreCase("_")) { - className = "me.StevenLawson.TotalFreedomMod.TotalFreedomMod"; + className = "me.totalfreedom.totalfreedommod.TotalFreedomMod"; } setStaticValue(className, fieldName, newValue); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_denick.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_denick.java index fbd191c2..a03aacb0 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_denick.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_denick.java @@ -14,7 +14,7 @@ public class Command_denick extends FreedomCommand @Override public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - if (!plugin.esb.isEssentialsEnabled()) + if (!plugin.esb.isEnabled()) { msg("Essentials is not enabled on this server."); return true; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_disguisetoggle.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_disguisetoggle.java index ebaae700..7f45cf8f 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_disguisetoggle.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_disguisetoggle.java @@ -18,7 +18,7 @@ public class Command_disguisetoggle extends FreedomCommand { if (!plugin.ldb.isEnabled()) { - msg(ChatColor.RED + "LibsDisguises is not enabled."); + msg("LibsDisguises is not enabled."); return true; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_gtfo.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_gtfo.java index 839ca8e9..17a91b10 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_gtfo.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_gtfo.java @@ -5,7 +5,6 @@ import me.totalfreedom.totalfreedommod.player.PlayerData; import me.totalfreedom.totalfreedommod.punishments.Punishment; import me.totalfreedom.totalfreedommod.punishments.PunishmentType; import me.totalfreedom.totalfreedommod.rank.Rank; -import me.totalfreedom.totalfreedommod.util.FLog; import me.totalfreedom.totalfreedommod.util.FUtil; import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.StringUtils; @@ -105,10 +104,7 @@ public class Command_gtfo extends FreedomCommand // Undo WorldEdits try { - if (plugin.web.isWorldEditEnabled()) - { - plugin.web.undo(player, 15); - } + plugin.web.undo(player, 15); } catch (NoClassDefFoundError | NullPointerException ex) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_kick.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_kick.java index 95b04bfe..d5a5a61d 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_kick.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_kick.java @@ -15,7 +15,6 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Kick a player.", usage = "/ [reason]", aliases = "k") public class Command_kick extends FreedomCommand { - @Override protected boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { @@ -25,6 +24,7 @@ public class Command_kick extends FreedomCommand } Player player = getPlayer(args[0]); + if (player == null) { msg(PLAYER_NOT_FOUND); @@ -57,5 +57,4 @@ public class Command_kick extends FreedomCommand return true; } - } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_linkdiscord.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_linkdiscord.java index 7573fdca..cdfd6f1f 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_linkdiscord.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_linkdiscord.java @@ -12,7 +12,7 @@ import org.bukkit.entity.Player; import java.util.Random; @CommandPermissions(level = Rank.NON_OP, source = SourceType.ONLY_IN_GAME) -@CommandParameters(description = "Link your discord account to your minecraft account", usage = "/") +@CommandParameters(description = "Link your Discord account to your Minecraft account", usage = "/") public class Command_linkdiscord extends FreedomCommand { @@ -21,7 +21,7 @@ public class Command_linkdiscord extends FreedomCommand { if (!plugin.dc.enabled) { - msg("The discord verification system is currently disabled.", ChatColor.RED); + msg("The Discord verification system is currently disabled.", ChatColor.RED); return true; } @@ -30,7 +30,7 @@ public class Command_linkdiscord extends FreedomCommand Admin admin = plugin.al.getAdmin(playerSender); if (admin.getDiscordID() != null) { - msg("Your minecraft account is already linked to a discord account.", ChatColor.RED); + msg("Your Minecraft account is already linked to a Discord account.", ChatColor.RED); return true; } @@ -55,7 +55,7 @@ public class Command_linkdiscord extends FreedomCommand VPlayer data = plugin.pv.getVerificationPlayer(playerSender); if (data.getDiscordId() != null) { - msg("Your minecraft account is already linked to a discord account.", ChatColor.RED); + msg("Your Minecraft account is already linked to a Discord account.", ChatColor.RED); return true; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_localspawn.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_localspawn.java index aa602eb8..bbbce8f4 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_localspawn.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_localspawn.java @@ -9,7 +9,6 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Teleport to the spawn point for the current world.", usage = "/", aliases = "worldspawn,gotospawn") public class Command_localspawn extends FreedomCommand { - @Override public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_lockup.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_lockup.java index 5c13e005..d5c135d4 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_lockup.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_lockup.java @@ -10,7 +10,7 @@ import org.bukkit.scheduler.BukkitRunnable; import org.bukkit.scheduler.BukkitTask; @CommandPermissions(level = Rank.SENIOR_ADMIN, source = SourceType.ONLY_CONSOLE, blockHostConsole = true) -@CommandParameters(description = "Block target's minecraft input. This is evil, and I never should have wrote it.", usage = "/ on | off>>") +@CommandParameters(description = "Block a player's Minecraft input. This is evil, and I never should have wrote it.", usage = "/ on | off>>") public class Command_lockup extends FreedomCommand { @@ -83,7 +83,6 @@ public class Command_lockup extends FreedomCommand { return false; } - return true; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_myadmin.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_myadmin.java index b49abc9e..da563ace 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_myadmin.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_myadmin.java @@ -3,7 +3,6 @@ package me.totalfreedom.totalfreedommod.command; import me.totalfreedom.totalfreedommod.admin.Admin; import me.totalfreedom.totalfreedommod.rank.Rank; import me.totalfreedom.totalfreedommod.util.FUtil; -import net.pravian.aero.util.ChatUtils; import net.pravian.aero.util.Ips; import org.apache.commons.lang3.StringUtils; import org.bukkit.ChatColor; @@ -180,7 +179,7 @@ public class Command_myadmin extends FreedomCommand plugin.al.updateTables(); return true; } - case "setacformat": + case "setacformat": { String format = StringUtils.join(args, " ", 1, args.length); target.setAcFormat(format); @@ -222,5 +221,4 @@ public class Command_myadmin extends FreedomCommand } } } - } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_namehistory.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_namehistory.java index e5094958..bbd63ac2 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_namehistory.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_namehistory.java @@ -7,10 +7,9 @@ import org.bukkit.entity.Player; import me.totalfreedom.totalfreedommod.util.History; @CommandPermissions(level = Rank.SUPER_ADMIN, source = SourceType.BOTH) -@CommandParameters(description = "Check name history of username.", usage = "/ ") +@CommandParameters(description = "Check name history of username.", usage = "/ ", aliases = "nh") public class Command_namehistory extends FreedomCommand { - @Override public boolean run(final CommandSender sender, final Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_playerverify.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_playerverify.java index 3e433c88..94e080e9 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_playerverify.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_playerverify.java @@ -2,43 +2,45 @@ package me.totalfreedom.totalfreedommod.command; import me.totalfreedom.totalfreedommod.playerverification.VPlayer; import me.totalfreedom.totalfreedommod.rank.Rank; +import me.totalfreedom.totalfreedommod.util.FUtil; import net.pravian.aero.util.Ips; +import org.apache.commons.lang3.StringUtils; import org.bukkit.ChatColor; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; @CommandPermissions(level = Rank.OP, source = SourceType.ONLY_IN_GAME) -@CommandParameters(description = "Manage your verification", usage = "/ ", aliases = "playerverification,pv") +@CommandParameters(description = "Manage your verification", usage = "/ < | settag | cleartag>", aliases = "playerverification,pv") public class Command_playerverify extends FreedomCommand { @Override protected boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { + VPlayer target = plugin.pv.getVerificationPlayer(playerSender); if (args.length == 1) { if (args[0].equalsIgnoreCase("clearips")) { - VPlayer data = plugin.pv.getVerificationPlayer(playerSender); int cleared = 0; - for (String ip : data.getIps()) + for (String ip : target.getIps()) { if (!ip.equals(Ips.getIp(playerSender))) { - data.removeIp(ip); + target.removeIp(ip); cleared++; } } msg("Cleared all IP's except your current IP \"" + Ips.getIp(playerSender) + "\""); msg("Cleared " + cleared + " IP's."); - plugin.pv.saveVerificationData(data); + plugin.pv.saveVerificationData(target); return true; } } - if (args.length < 2) + if (args.length < 1) { return false; } @@ -48,6 +50,23 @@ public class Command_playerverify extends FreedomCommand msg("This command is only for OP's.", ChatColor.RED); return true; } + + switch (args[0]) + { + case "cleartag": + { + msg("Cleared personal default tag"); + target.setTag(null); + plugin.pv.saveVerificationData(target); + return true; + } + } + + if (args.length < 2) + { + return false; + } + switch (args[0].toLowerCase()) { case "enable": @@ -56,7 +75,7 @@ public class Command_playerverify extends FreedomCommand case "discord": if (!plugin.dc.enabled) { - msg("The discord verification system is currently disabled.", ChatColor.RED); + msg("The Discord verification system is currently disabled.", ChatColor.RED); return true; } VPlayer data = plugin.pv.getVerificationPlayer(playerSender); @@ -67,14 +86,15 @@ public class Command_playerverify extends FreedomCommand } data.setDiscordEnabled(true); plugin.pv.saveVerificationData(data); - msg("Enabled discord verification. Please type /linkdiscord to link a discord account.", ChatColor.GREEN); + msg("Enabled Discord verification. Please type /linkdiscord to link a Discord account.", ChatColor.GREEN); return true; case "forum": - msg("TODO. This will be enabled in a later update. Please use discord verification instead."); + msg("TODO. This will be enabled in a later update. Please use Discord verification instead."); return true; default: return false; } + case "disable": switch (args[1].toLowerCase()) { @@ -87,7 +107,7 @@ public class Command_playerverify extends FreedomCommand } data.setDiscordEnabled(false); plugin.pv.saveVerificationData(data); - msg("Disabled discord verification.", ChatColor.GREEN); + msg("Disabled Discord verification.", ChatColor.GREEN); return true; case "forum": msg("TODO. Forum verification will be enabled in a later update."); @@ -95,15 +115,15 @@ public class Command_playerverify extends FreedomCommand default: return false; } + case "status": switch (args[1].toLowerCase()) { case "discord": - VPlayer data = plugin.pv.getVerificationPlayer(playerSender); - boolean enabled = data.getDiscordEnabled(); - boolean specified = data.getDiscordId() != null; + boolean enabled = target.getDiscordEnabled(); + boolean specified = target.getDiscordId() != null; msg(ChatColor.GRAY + "Discord Verification Enabled: " + (enabled ? ChatColor.GREEN + "true" : ChatColor.RED + "false")); - msg(ChatColor.GRAY + "Discord ID: " + (specified ? ChatColor.GREEN + data.getDiscordId() : ChatColor.RED + "not set")); + msg(ChatColor.GRAY + "Discord ID: " + (specified ? ChatColor.GREEN + target.getDiscordId() : ChatColor.RED + "not set")); return true; case "forum": msg("TODO. Forum verification will be enabled in a later update."); @@ -111,6 +131,16 @@ public class Command_playerverify extends FreedomCommand default: return false; } + + case "settag": + { + String tag = StringUtils.join(args, " ", 1, args.length); + target.setTag(tag); + msg("Your default tag is now: " + FUtil.colorize(target.getTag())); + plugin.pv.saveVerificationData(target); + return true; + } + default: return false; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_setlimit.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_setlimit.java index ff2dc603..05b11f53 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_setlimit.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_setlimit.java @@ -14,11 +14,6 @@ public class Command_setlimit extends FreedomCommand @Override public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - if (!plugin.web.isWorldEditEnabled()) - { - msg("WorldEdit is not enabled on this server."); - return true; - } int amount = 100000; if (args.length > 0) { @@ -32,10 +27,23 @@ public class Command_setlimit extends FreedomCommand return true; } } - FUtil.adminAction(sender.getName(), "Setting everyone's WorldEdit block modification limit to " + amount + ".", true); + boolean success = false; for (final Player player : server.getOnlinePlayers()) { - plugin.web.setLimit(player, amount); + try + { + plugin.web.setLimit(player, amount); + success = true; + } + catch (NoClassDefFoundError | NullPointerException ex) + { + msg("WorldEdit is not enabled on this server."); + success = false; + } + } + if (success) + { + FUtil.adminAction(sender.getName(), "Setting everyone's WorldEdit block modification limit to " + amount + ".", true); } return true; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tprandom.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tprandom.java index 29a1cb0a..9669a5d8 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tprandom.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tprandom.java @@ -2,17 +2,16 @@ package me.totalfreedom.totalfreedommod.command; import me.totalfreedom.totalfreedommod.rank.Rank; import me.totalfreedom.totalfreedommod.util.FUtil; -import org.bukkit.Location; import org.bukkit.ChatColor; -import org.bukkit.entity.Player; +import org.bukkit.Location; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; @CommandPermissions(level = Rank.OP, source = SourceType.ONLY_IN_GAME) @CommandParameters(description = "Go to a random place in the current world you are in", usage = "/", aliases = "tpr") public class Command_tprandom extends FreedomCommand { - @Override public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_unban.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_unban.java index 5de4f831..d32491ba 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_unban.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_unban.java @@ -48,10 +48,7 @@ public class Command_unban extends FreedomCommand // Redo WorldEdits try { - if (plugin.web.isWorldEditEnabled()) - { - plugin.web.redo(player, 15); - } + plugin.web.redo(player, 15); } catch (NoClassDefFoundError | NullPointerException ex) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_unlinkdiscord.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_unlinkdiscord.java index d7419751..5f83d834 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_unlinkdiscord.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_unlinkdiscord.java @@ -9,7 +9,7 @@ import org.bukkit.entity.Player; import org.bukkit.ChatColor; @CommandPermissions(level = Rank.OP, source = SourceType.ONLY_IN_GAME) -@CommandParameters(description = "Unlink your discord account to your minecraft account", usage = "/") +@CommandParameters(description = "Unlink your Discord account to your Minecraft account", usage = "/") public class Command_unlinkdiscord extends FreedomCommand { @@ -18,7 +18,7 @@ public class Command_unlinkdiscord extends FreedomCommand { if (!plugin.dc.enabled) { - msg("The discord verification system is currently disabled.", ChatColor.RED); + msg("The Discord verification system is currently disabled.", ChatColor.RED); return true; } @@ -27,11 +27,11 @@ public class Command_unlinkdiscord extends FreedomCommand Admin admin = plugin.al.getAdmin(playerSender); if (admin.getDiscordID() == null) { - msg("Your Minecraft account is not linked to a discord account.", ChatColor.RED); + msg("Your Minecraft account is not linked to a Discord account.", ChatColor.RED); return true; } admin.setDiscordID(null); - msg("Your Minecraft account has been successfully unlinked from the discord account.", ChatColor.GREEN); + msg("Your Minecraft account has been successfully unlinked from the Discord account.", ChatColor.GREEN); return true; } else @@ -39,12 +39,12 @@ public class Command_unlinkdiscord extends FreedomCommand VPlayer data = plugin.pv.getVerificationPlayer(playerSender); if (data.getDiscordId() == null) { - msg("Your Minecraft account is not linked to a discord account.", ChatColor.RED); + msg("Your Minecraft account is not linked to a Discord account.", ChatColor.RED); return true; } data.setDiscordId(null); data.setDiscordEnabled(false); - msg("Your Minecraft account has been successfully unlinked from the discord account.", ChatColor.GREEN); + msg("Your Minecraft account has been successfully unlinked from the Discord account.", ChatColor.GREEN); return true; } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_verify.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_verify.java index ae8ffb4a..5bf3e14d 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_verify.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_verify.java @@ -27,13 +27,13 @@ public class Command_verify extends FreedomCommand if (!plugin.dc.enabled) { - msg("The discord verification system is currently disabled", ChatColor.RED); + msg("The Discord verification system is currently disabled", ChatColor.RED); return true; } if (!plugin.al.isAdminImpostor(playerSender) && !plugin.pv.isPlayerImpostor(playerSender)) { - msg("You are not an imposter, therefore you do not need to verify.", ChatColor.RED); + msg("You are not an impostor, therefore you do not need to verify.", ChatColor.RED); return true; } @@ -44,7 +44,7 @@ public class Command_verify extends FreedomCommand Admin admin = plugin.al.getEntryByName(playerSender.getName()); if (admin.getDiscordID() == null) { - msg("You do not have a discord account linked to your minecraft account, please verify the manual way.", ChatColor.RED); + msg("You do not have a Discord account linked to your Minecraft account, please verify the manual way.", ChatColor.RED); return true; } discordId = admin.getDiscordID(); @@ -55,7 +55,7 @@ public class Command_verify extends FreedomCommand { if (plugin.pv.getVerificationPlayer(playerSender).getDiscordId() == null) { - msg("You do not have a discord account linked to your minecraft account, please verify the manual way.", ChatColor.RED); + msg("You do not have a Discord account linked to your Minecraft account, please verify the manual way.", ChatColor.RED); return true; } discordId = plugin.pv.getVerificationPlayer(playerSender).getDiscordId(); @@ -71,7 +71,7 @@ public class Command_verify extends FreedomCommand code += random.nextInt(10); } Discord.VERIFY_CODES.add(code); - Discord.bot.getUserById(discordId).openPrivateChannel().complete().sendMessage("A user with the ip `" + Ips.getIp(playerSender) + "` has sent a verification request. Please run the following in-game command: `/verify " + code + "`").complete(); + Discord.bot.getUserById(discordId).openPrivateChannel().complete().sendMessage("A user with the IP `" + Ips.getIp(playerSender) + "` has sent a verification request. Please run the following in-game command: `/verify " + code + "`").complete(); msg("A verification code has been sent to your account, please copy the code and run /verify ", ChatColor.GREEN); } else @@ -88,7 +88,7 @@ public class Command_verify extends FreedomCommand { Admin admin = plugin.al.getEntryByName(playerSender.getName()); Discord.VERIFY_CODES.remove(code); - FUtil.bcastMsg(playerSender.getName() + " has verified themself!", ChatColor.GOLD); + FUtil.bcastMsg(playerSender.getName() + " has verified!", ChatColor.GOLD); FUtil.adminAction(ConfigEntry.SERVER_NAME.getString(), "Readding " + admin.getName() + " to the admin list", true); if (playerSender != null) { @@ -144,11 +144,13 @@ public class Command_verify extends FreedomCommand else { final FPlayer fPlayer = plugin.pl.getPlayer(playerSender); - FUtil.bcastMsg(playerSender.getName() + " has verified themself!", ChatColor.GOLD); + FUtil.bcastMsg(playerSender.getName() + " has verified!", ChatColor.GOLD); if (playerSender != null) { plugin.rm.updateDisplay(playerSender); } + playerSender.setOp(true); + msg(YOU_ARE_OP); if (fPlayer.getFreezeData().isFrozen()) { fPlayer.getFreezeData().setFrozen(false); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_whitelist.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_whitelist.java index fe8cc084..ecef19c6 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_whitelist.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_whitelist.java @@ -12,7 +12,6 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Manage the whitelist.", usage = "/ | remove | addall | purge>") public class Command_whitelist extends FreedomCommand { - @Override public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { @@ -24,6 +23,11 @@ public class Command_whitelist extends FreedomCommand // list if (args[0].equalsIgnoreCase("list")) { + if (server.getWhitelistedPlayers().isEmpty()) + { + msg("There are no whitelisted players."); + return true; + } msg("Whitelisted players: " + FUtil.playerListToNames(server.getWhitelistedPlayers())); return true; } @@ -51,20 +55,16 @@ public class Command_whitelist extends FreedomCommand msg("Online whitelisted players: " + onlineWPs); msg("Offline whitelisted players: " + offlineWPs); msg("Total whitelisted players: " + totalWPs); - return true; } - // all commands past this line are superadmin-only - if (!(senderIsConsole || plugin.al.isAdmin(sender))) - { - return noPerms(); - } + // Commands below are restricted to admins + checkRank(Rank.SUPER_ADMIN); // on if (args[0].equalsIgnoreCase("on")) { - FUtil.adminAction(sender.getName(), "Turning the whitelist on.", true); + FUtil.adminAction(sender.getName(), "Turning the whitelist on", true); server.setWhitelist(true); return true; } @@ -72,7 +72,7 @@ public class Command_whitelist extends FreedomCommand // off if (args[0].equalsIgnoreCase("off")) { - FUtil.adminAction(sender.getName(), "Turning the whitelist off.", true); + FUtil.adminAction(sender.getName(), "Turning the whitelist off", true); server.setWhitelist(false); return true; } @@ -94,7 +94,7 @@ public class Command_whitelist extends FreedomCommand player = DepreciationAggregator.getOfflinePlayer(server, search_name); } - FUtil.adminAction(sender.getName(), "Adding " + player.getName() + " to the whitelist.", false); + FUtil.adminAction(sender.getName(), "Adding " + player.getName() + " to the whitelist", false); player.setWhitelisted(true); return true; } @@ -118,7 +118,7 @@ public class Command_whitelist extends FreedomCommand if (player.isWhitelisted()) { - FUtil.adminAction(sender.getName(), "Removing " + player.getName() + " from the whitelist.", false); + FUtil.adminAction(sender.getName(), "Removing " + player.getName() + " from the whitelist", false); player.setWhitelisted(false); return true; } @@ -127,13 +127,12 @@ public class Command_whitelist extends FreedomCommand msg("That player is not whitelisted"); return true; } - } // addall if (args[0].equalsIgnoreCase("addall")) { - FUtil.adminAction(sender.getName(), "Adding all online players to the whitelist.", false); + FUtil.adminAction(sender.getName(), "Adding all online players to the whitelist", false); int counter = 0; for (Player player : server.getOnlinePlayers()) { @@ -148,25 +147,17 @@ public class Command_whitelist extends FreedomCommand return true; } - // all commands past this line are console/telnet only - if (!senderIsConsole) - { - noPerms(); - return true; - } + // Telnet only + checkConsole(); + checkRank(Rank.TELNET_ADMIN); - //purge + // purge if (args[0].equalsIgnoreCase("purge")) { -// FUtil.adminAction(sender.getName(), "Removing all players from the whitelist.", false); -// msg("Removed " + plugin.si.purgeWhitelist() + " players from the whitelist."); - - FUtil.adminAction(sender.getName(), "Whitelist purging is temporarily disabled.", true); - + FUtil.adminAction(sender.getName(), "Removing all players from the whitelist", false); + msg("Removed " + plugin.si.purgeWhitelist() + " players from the whitelist."); return true; } - - // none of the commands were executed return false; } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipeflatlands.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipeflatlands.java index fc34ebcc..e01d4f91 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipeflatlands.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipeflatlands.java @@ -26,7 +26,7 @@ public class Command_wipeflatlands extends FreedomCommand FUtil.bcastMsg("Server is going offline for flatlands wipe.", ChatColor.GRAY); - if (plugin.wgb.isPluginEnabled()) + if (plugin.wgb.isEnabled()) { plugin.wgb.wipeRegions(plugin.wm.flatlands.getWorld()); } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wiperegions.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wiperegions.java index fc4e1a0f..a4bb911a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wiperegions.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wiperegions.java @@ -15,7 +15,7 @@ public class Command_wiperegions extends FreedomCommand @Override public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - if (!plugin.wgb.isPluginEnabled()) + if (!plugin.wgb.isEnabled()) { msg("WorldGuard is not enabled."); return true; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipeuserdata.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipeuserdata.java index 3df058ee..80c1d3b6 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipeuserdata.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipeuserdata.java @@ -20,7 +20,7 @@ public class Command_wipeuserdata extends FreedomCommand { if (!server.getPluginManager().isPluginEnabled("Essentials")) { - msg("Essentials is not enabled on this server"); + msg("Essentials is not enabled on this server."); return true; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipewarps.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipewarps.java index dcf4356a..34799840 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipewarps.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_wipewarps.java @@ -17,7 +17,7 @@ public class Command_wipewarps extends FreedomCommand @Override public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - if (!plugin.esb.isEssentialsEnabled()) + if (!plugin.esb.isEnabled()) { msg("Essentials is not enabled on this server."); return true; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/config/ConfigEntry.java b/src/main/java/me/totalfreedom/totalfreedommod/config/ConfigEntry.java index d5c3c354..d682a2e3 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/config/ConfigEntry.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/config/ConfigEntry.java @@ -7,8 +7,6 @@ import java.util.List; public enum ConfigEntry { - - FORCE_IP_ENABLED(Boolean.class, "forceip.enabled"), FORCE_IP_PORT(Integer.class, "forceip.port"), FORCE_IP_KICKMSG(String.class, "forceip.kickmsg"), diff --git a/src/main/java/me/totalfreedom/totalfreedommod/discord/MessageListener.java b/src/main/java/me/totalfreedom/totalfreedommod/discord/MessageListener.java index fb5a23da..1f166c71 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/discord/MessageListener.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/discord/MessageListener.java @@ -12,7 +12,6 @@ public class MessageListener extends ListenerAdapter { if (!event.getAuthor().getId().equals(Discord.bot.getSelfUser().getId())) { - // Handle link code if (event.getMessage().getContentRaw().matches("[0-9][0-9][0-9][0-9][0-9]")) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_help.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_help.java index d0a80405..242598da 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_help.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_help.java @@ -56,12 +56,7 @@ public class Module_help extends HTTPDModule pluginName = ((PluginIdentifiableCommand) command).getPlugin().getName(); } - List pluginCommands = commandsByPlugin.get(pluginName); - if (pluginCommands == null) - { - pluginCommands = Lists.newArrayList(); - commandsByPlugin.put(pluginName, pluginCommands); - } + List pluginCommands = commandsByPlugin.computeIfAbsent(pluginName, k -> Lists.newArrayList()); pluginCommands.add(command); } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_logfile.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_logfile.java index 99827e73..555aee5f 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_logfile.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_logfile.java @@ -48,7 +48,7 @@ public class Module_logfile extends HTTPDModule public String title() { - return "TotalFreedomMod :: Logfiles"; + return "TotalFreedomMod :: Log Files"; } public String body() throws ResponseOverrideException diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_punishments.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_punishments.java index ab33dc06..27301056 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_punishments.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_punishments.java @@ -1,11 +1,12 @@ package me.totalfreedom.totalfreedommod.httpd.module; -import java.io.File; import me.totalfreedom.totalfreedommod.TotalFreedomMod; import me.totalfreedom.totalfreedommod.admin.Admin; -import me.totalfreedom.totalfreedommod.punishments.PunishmentList; import me.totalfreedom.totalfreedommod.httpd.HTTPDaemon; import me.totalfreedom.totalfreedommod.httpd.NanoHTTPD; +import me.totalfreedom.totalfreedommod.punishments.PunishmentList; + +import java.io.File; public class Module_punishments extends HTTPDModule { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerData.java b/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerData.java index ad6ccb11..78a14ce7 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerData.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerData.java @@ -56,11 +56,6 @@ public class PlayerData implements ConfigLoadable, ConfigSavable, Validatable cs.set("last_join", lastJoinUnix); } - public String getUsername() - { - return username; - } - public List getIps() { return Collections.unmodifiableList(ips); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/playerverification/VPlayer.java b/src/main/java/me/totalfreedom/totalfreedommod/playerverification/VPlayer.java index f5a054d9..f3689403 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/playerverification/VPlayer.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/playerverification/VPlayer.java @@ -32,6 +32,9 @@ public class VPlayer implements ConfigLoadable, ConfigSavable, Validatable @Getter @Setter private Boolean forumEnabled = false; + @Getter + @Setter + private String tag = null; public VPlayer(String name) { @@ -53,6 +56,7 @@ public class VPlayer implements ConfigLoadable, ConfigSavable, Validatable forumUsername = cs.getString("forumUsername", null); discordEnabled = cs.getBoolean("discordEnabled", false); forumEnabled = cs.getBoolean("forumEnabled", false); + tag = cs.getString("tag", null); } @Override @@ -64,6 +68,7 @@ public class VPlayer implements ConfigLoadable, ConfigSavable, Validatable cs.set("forumUsername", forumUsername); cs.set("discordEnabled", discordEnabled); cs.set("forumEnabled", forumEnabled); + cs.set("tag", tag); cs.set("ips", Lists.newArrayList(ips)); } @@ -85,7 +90,6 @@ public class VPlayer implements ConfigLoadable, ConfigSavable, Validatable @Override public boolean isValid() { - return name != null - && !ips.isEmpty(); + return name != null && !ips.isEmpty(); } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/rank/RankManager.java b/src/main/java/me/totalfreedom/totalfreedommod/rank/RankManager.java index 703c4e6f..f01fc2c5 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/rank/RankManager.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/rank/RankManager.java @@ -5,6 +5,7 @@ import me.totalfreedom.totalfreedommod.TotalFreedomMod; import me.totalfreedom.totalfreedommod.admin.Admin; import me.totalfreedom.totalfreedommod.config.ConfigEntry; import me.totalfreedom.totalfreedommod.player.FPlayer; +import me.totalfreedom.totalfreedommod.playerverification.VPlayer; import me.totalfreedom.totalfreedommod.util.FUtil; import net.pravian.aero.util.ChatUtils; import org.apache.commons.lang3.StringUtils; @@ -150,6 +151,7 @@ public class RankManager extends FreedomService final Player player = event.getPlayer(); //plugin.pl.getData(player); final FPlayer fPlayer = plugin.pl.getPlayer(player); + VPlayer target = plugin.pv.getVerificationPlayer(player); // Unban admins boolean isAdmin = plugin.al.isAdmin(player); @@ -169,8 +171,8 @@ public class RankManager extends FreedomService } // Handle impostors - Boolean isImposter = plugin.al.isAdminImpostor(player) || plugin.pv.isPlayerImpostor(player) || plugin.mbl.isMasterBuilderImpostor(player); - if (isImposter) + boolean isImpostor = plugin.al.isAdminImpostor(player) || plugin.pv.isPlayerImpostor(player) || plugin.mbl.isMasterBuilderImpostor(player); + if (isImpostor) { FUtil.bcastMsg(ChatColor.AQUA + player.getName() + " is " + Rank.IMPOSTOR.getColoredLoginMessage()); if (plugin.al.isAdminImpostor(player)) @@ -230,5 +232,13 @@ public class RankManager extends FreedomService { } } + + if (!plugin.pv.isPlayerImpostor(player) && target.getDiscordEnabled()) + { + if (target.getTag() != null) + { + plugin.pl.getPlayer(player).setTag(FUtil.colorize(target.getTag())); + } + } } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/util/DepreciationAggregator.java b/src/main/java/me/totalfreedom/totalfreedommod/util/DepreciationAggregator.java index 49aadb9f..a7ebdb4b 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/util/DepreciationAggregator.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/util/DepreciationAggregator.java @@ -1,19 +1,17 @@ package me.totalfreedom.totalfreedommod.util; -import java.util.HashSet; -import java.util.UUID; import org.bukkit.Material; import org.bukkit.OfflinePlayer; import org.bukkit.Server; import org.bukkit.block.Block; import org.bukkit.entity.EntityType; import org.bukkit.entity.LivingEntity; -import org.bukkit.material.MaterialData; + +import java.util.HashSet; @SuppressWarnings("deprecation") public class DepreciationAggregator { - public static Block getTargetBlock(LivingEntity entity, HashSet transparent, int maxDistance) { return entity.getTargetBlock(transparent, maxDistance); diff --git a/src/main/resources/version.yml b/src/main/resources/version.yml index 012544e6..94a01ddf 100644 --- a/src/main/resources/version.yml +++ b/src/main/resources/version.yml @@ -1,4 +1,4 @@ # # Config version # -version: 1 +version: 1 \ No newline at end of file