Merged with master

This commit is contained in:
unknown
2014-08-25 14:07:47 +02:00
68 changed files with 507 additions and 331 deletions

View File

@ -73,6 +73,23 @@ public class TFM_EssentialsBridge
}
}
public static String getNickname(String username)
{
try
{
final User user = getEssentialsUser(username);
if (user != null)
{
return user.getNickname();
}
}
catch (Exception ex)
{
TFM_Log.severe(ex);
}
return null;
}
public static long getLastActivity(String username)
{
try

View File

@ -156,7 +156,6 @@ public class TFM_WorldEditBridge
}.runTask(TotalFreedomMod.plugin);
}
}
catch (IncompleteRegionException ex)
{

View File

@ -3,7 +3,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.World.TFM_AdminWorld;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.World;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -117,7 +116,7 @@ public class Command_adminworld extends TFM_Command
if (player == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}
@ -216,7 +215,7 @@ public class Command_adminworld extends TFM_Command
{
if (!(sender instanceof Player) || sender_p == null || !TFM_AdminList.isSuperAdmin(sender))
{
throw new PermissionDeniedException(TotalFreedomMod.MSG_NO_PERMS);
throw new PermissionDeniedException(TFM_Command.MSG_NO_PERMS);
}
}

View File

@ -3,7 +3,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerData;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -41,7 +40,7 @@ public class Command_blockcmd extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND);
playerMsg(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -2,7 +2,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerData;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.GameMode;
import org.bukkit.Location;
import org.bukkit.Material;
@ -52,7 +51,7 @@ public class Command_cage extends TFM_Command
if (player == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -2,7 +2,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import java.util.Random;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.Achievement;
import org.bukkit.ChatColor;
import org.bukkit.Material;
@ -16,35 +15,39 @@ import org.bukkit.inventory.meta.ItemMeta;
@CommandParameters(description = "For the people that are still alive.", usage = "/<command>")
public class Command_cake extends TFM_Command
{
public static final String CAKE_LYRICS = "But there's no sense crying over every mistake. You just keep on trying till you run out of cake.";
private final Random random = new Random();
@Override
public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
{
final StringBuilder output = new StringBuilder();
StringBuilder output = new StringBuilder();
Random randomGenerator = new Random();
String[] words = TotalFreedomMod.CAKE_LYRICS.split(" ");
for (String word : words)
final String[] words = CAKE_LYRICS.split(" ");
for (final String word : words)
{
String color_code = Integer.toHexString(1 + randomGenerator.nextInt(14));
output.append(ChatColor.COLOR_CHAR).append(color_code).append(word).append(" ");
output.append(ChatColor.COLOR_CHAR).append(Integer.toHexString(1 + random.nextInt(14))).append(word).append(" ");
}
ItemStack heldItem = new ItemStack(Material.CAKE);
ItemMeta heldItemMeta = heldItem.getItemMeta();
heldItemMeta.setDisplayName((new StringBuilder()).append(ChatColor.WHITE).append("The ").append(ChatColor.BLACK).append("Lie").toString());
final ItemStack heldItem = new ItemStack(Material.CAKE);
final ItemMeta heldItemMeta = heldItem.getItemMeta();
heldItemMeta.setDisplayName((new StringBuilder()).append(ChatColor.WHITE).append("The ").append(ChatColor.DARK_GRAY).append("Lie").toString());
heldItem.setItemMeta(heldItemMeta);
for (Player player : server.getOnlinePlayers())
for (final Player player : server.getOnlinePlayers())
{
player.getInventory().setItem(player.getInventory().firstEmpty(), heldItem);
player.awardAchievement(Achievement.MINE_WOOD);
player.awardAchievement(Achievement.BUILD_WORKBENCH);
player.awardAchievement(Achievement.BUILD_HOE);
final int firstEmpty = player.getInventory().firstEmpty();
if (firstEmpty >= 0)
{
player.getInventory().setItem(firstEmpty, heldItem);
}
player.awardAchievement(Achievement.BAKE_CAKE);
}
TFM_Util.bcastMsg(output.toString());
return true;
}
}

View File

@ -1,7 +1,6 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Minecart;
@ -23,7 +22,7 @@ public class Command_cartsit extends TFM_Command
if (targetPlayer == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}
}

View File

@ -48,4 +48,4 @@ public class Command_cmdlist extends TFM_Command
return true;
}
}
}

View File

@ -2,7 +2,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.GameMode;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -35,7 +34,7 @@ public class Command_creative extends TFM_Command
{
if (!TFM_AdminList.isSuperAdmin(sender))
{
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
sender.sendMessage(TFM_Command.MSG_NO_PERMS);
return true;
}
@ -54,12 +53,11 @@ public class Command_creative extends TFM_Command
return true;
}
player = getPlayer(args[0]);
if (player == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -1,7 +1,6 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -18,7 +17,7 @@ public class Command_deopall extends TFM_Command
for (Player player : server.getOnlinePlayers())
{
player.setOp(false);
player.sendMessage(TotalFreedomMod.YOU_ARE_NOT_OP);
player.sendMessage(TFM_Command.YOU_ARE_NOT_OP);
}
return true;

View File

@ -5,7 +5,6 @@ import me.StevenLawson.TotalFreedomMod.TFM_Ban;
import me.StevenLawson.TotalFreedomMod.TFM_BanManager;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.ChatColor;
import org.bukkit.GameMode;
import org.bukkit.command.Command;
@ -30,7 +29,7 @@ public class Command_doom extends TFM_Command
if (player == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -5,14 +5,14 @@ import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@CommandPermissions(level = AdminLevel.ALL, source = SourceType.BOTH)
@CommandPermissions(level = AdminLevel.ALL, source = SourceType.ONLY_IN_GAME)
@CommandParameters(description = "Goto the ender / \"The End\".", usage = "/<command>")
public class Command_ender extends TFM_Command
{
@Override
public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
{
TFM_Util.gotoWorld(sender, server.getWorlds().get(0).getName() + "_the_end");
TFM_Util.gotoWorld(sender_p, server.getWorlds().get(0).getName() + "_the_end");
return true;
}
}

View File

@ -1,7 +1,6 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerList;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -24,7 +23,7 @@ public class Command_findip extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND);
playerMsg(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -46,7 +46,7 @@ public class Command_fr extends TFM_Command
{
if (!TFM_AdminList.isSuperAdmin(player))
{
TFM_Util.playerMsg(player, "You have been frozen due to rule breaker(s), you will be unfrozen very soon.", ChatColor.RED);
playerMsg(player, "You have been frozen due to rule breaker(s), you will be unfrozen very soon.", ChatColor.RED);
}
}
}
@ -85,7 +85,7 @@ public class Command_fr extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND, ChatColor.RED);
playerMsg(TFM_Command.PLAYER_NOT_FOUND, ChatColor.RED);
return true;
}

View File

@ -5,7 +5,6 @@ import java.util.Iterator;
import me.StevenLawson.TotalFreedomMod.TFM_BanManager;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerData;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -135,7 +134,7 @@ public class Command_gadmin extends TFM_Command
{
ip = String.format("%s.%s.*.*", ip_parts[0], ip_parts[1]);
}
TFM_Util.adminAction(sender.getName(), String.format("Banning IP: %s.", target.getName(), ip), true);
TFM_Util.adminAction(sender.getName(), String.format("Banning IP: %s.", ip), true);
TFM_BanManager.addIpBan(target);
target.kickPlayer("IP address banned by Administrator.");
@ -163,7 +162,7 @@ public class Command_gadmin extends TFM_Command
{
TFM_Util.adminAction(sender.getName(), String.format("Opping %s.", target.getName()), false);
target.setOp(false);
target.sendMessage(TotalFreedomMod.YOU_ARE_OP);
target.sendMessage(TFM_Command.YOU_ARE_OP);
break;
}
@ -171,7 +170,7 @@ public class Command_gadmin extends TFM_Command
{
TFM_Util.adminAction(sender.getName(), String.format("Deopping %s.", target.getName()), false);
target.setOp(false);
target.sendMessage(TotalFreedomMod.YOU_ARE_NOT_OP);
target.sendMessage(TFM_Command.YOU_ARE_NOT_OP);
break;
}

View File

@ -1,7 +1,6 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_CommandBlocker;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -23,7 +22,7 @@ public class Command_gcmd extends TFM_Command
if (player == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -58,7 +58,7 @@ public class Command_glist extends TFM_Command
if (entry == null)
{
TFM_Util.playerMsg(sender, "Can't find that user. If target is not logged in, make sure that you spelled the name exactly.");
playerMsg("Can't find that user. If target is not logged in, make sure that you spelled the name exactly.");
return true;
}

View File

@ -5,7 +5,6 @@ import me.StevenLawson.TotalFreedomMod.TFM_Ban;
import me.StevenLawson.TotalFreedomMod.TFM_BanManager;
import me.StevenLawson.TotalFreedomMod.TFM_RollbackManager;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.util.org.apache.commons.lang3.ArrayUtils;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.ChatColor;
@ -31,7 +30,7 @@ public class Command_gtfo extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND, ChatColor.RED);
playerMsg(TFM_Command.PLAYER_NOT_FOUND, ChatColor.RED);
return true;
}
@ -77,7 +76,20 @@ public class Command_gtfo extends TFM_Command
// ban IP address:
String ip = TFM_Util.getFuzzyIp(player.getAddress().getAddress().getHostAddress());
TFM_Util.bcastMsg(String.format("Banning: %s, IP: %s.", player.getName(), ip) + ChatColor.RED + (reason != null ? ("Reason: " + ChatColor.YELLOW + reason) : ""));
final StringBuilder bcast = new StringBuilder()
.append(ChatColor.RED)
.append("Banning: ")
.append(player.getName())
.append(", IP: ")
.append(ip);
if (reason != null)
{
bcast.append(" - Reason: ").append(ChatColor.YELLOW).append(reason);
}
TFM_Util.bcastMsg(bcast.toString());
TFM_BanManager.addIpBan(new TFM_Ban(ip, player.getName(), sender.getName(), null, reason));

View File

@ -3,7 +3,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerData;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -64,7 +63,7 @@ public class Command_halt extends TFM_Command
{
if (count == 0)
{
playerMsg(sender, "Halted players:");
playerMsg("Halted players:");
}
playerMsg("- " + hp.getName());
count++;
@ -81,7 +80,7 @@ public class Command_halt extends TFM_Command
if (player == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -49,20 +49,19 @@ public class Command_invis extends TFM_Command
if (players.isEmpty())
{
TFM_Util.playerMsg(sender, "There are no invisible players");
playerMsg("There are no invisible players");
return true;
}
if (smite)
{
TFM_Util.playerMsg(sender, "Smitten " + smites + " players");
playerMsg("Smitten " + smites + " players");
}
else
{
TFM_Util.playerMsg(sender, "Invisble players (" + players.size() + "): " + StringUtils.join(players, ", "));
playerMsg("Invisble players (" + players.size() + "): " + StringUtils.join(players, ", "));
}
return true;
}
}

View File

@ -1,7 +1,6 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerData;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -23,7 +22,7 @@ public class Command_lastcmd extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND);
playerMsg(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -3,12 +3,9 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import java.util.ArrayList;
import java.util.List;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerRank;
import me.StevenLawson.TotalFreedomMod.TFM_Admin;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import org.apache.commons.lang.StringUtils;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;

View File

@ -2,7 +2,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerData;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -51,7 +50,7 @@ public class Command_lockup extends TFM_Command
if (player == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}
@ -65,7 +64,7 @@ public class Command_lockup extends TFM_Command
if (player == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -5,14 +5,14 @@ import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@CommandPermissions(level = AdminLevel.ALL, source = SourceType.BOTH)
@CommandPermissions(level = AdminLevel.ALL, source = SourceType.ONLY_IN_GAME)
@CommandParameters(description = "Goto the nether.", usage = "/<command>")
public class Command_nether extends TFM_Command
{
@Override
public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
{
TFM_Util.gotoWorld(sender, server.getWorlds().get(0).getName() + "_nether");
TFM_Util.gotoWorld(sender_p, server.getWorlds().get(0).getName() + "_nether");
return true;
}
}

View File

@ -0,0 +1,51 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import me.StevenLawson.TotalFreedomMod.Bridge.TFM_EssentialsBridge;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import net.minecraft.util.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 = AdminLevel.SUPER, source = SourceType.BOTH)
@CommandParameters(description = "Essentials Interface Command - Remove distracting things from nicknames of all players on server.", usage = "/<command>", aliases = "nc")
public class Command_nickclean extends TFM_Command
{
private static final ChatColor[] BLOCKED = new ChatColor[]
{
ChatColor.MAGIC,
ChatColor.STRIKETHROUGH,
ChatColor.ITALIC,
ChatColor.UNDERLINE,
ChatColor.BLACK
};
private static final Pattern REGEX = Pattern.compile("\\u00A7[" + StringUtils.join(BLOCKED, "") + "]");
@Override
public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
{
TFM_Util.adminAction(sender.getName(), "Cleaning all nicknames.", false);
for (final Player player : server.getOnlinePlayers())
{
final String playerName = player.getName();
final String nickName = TFM_EssentialsBridge.getNickname(playerName);
if (nickName != null && !nickName.isEmpty() && !nickName.equalsIgnoreCase(playerName))
{
final Matcher matcher = REGEX.matcher(nickName);
if (matcher.find())
{
final String newNickName = matcher.replaceAll("");
playerMsg(ChatColor.RESET + playerName + ": \"" + nickName + ChatColor.RESET + "\" -> \"" + newNickName + ChatColor.RESET + "\".");
TFM_EssentialsBridge.setNickname(playerName, newNickName);
}
}
}
return true;
}
}

View File

@ -4,7 +4,6 @@ import me.StevenLawson.TotalFreedomMod.TFM_Log;
import me.StevenLawson.TotalFreedomMod.TFM_ServerInterface;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -28,7 +27,7 @@ public class Command_onlinemode extends TFM_Command
if (sender instanceof Player && !TFM_AdminList.isSeniorAdmin(sender, true))
{
playerMsg(TotalFreedomMod.MSG_NO_PERMS);
playerMsg(TFM_Command.MSG_NO_PERMS);
return true;
}

View File

@ -1,7 +1,6 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.GameMode;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -35,7 +34,7 @@ public class Command_opall extends TFM_Command
for (Player player : server.getOnlinePlayers())
{
player.setOp(true);
player.sendMessage(TotalFreedomMod.YOU_ARE_OP);
player.sendMessage(TFM_Command.YOU_ARE_OP);
if (doSetGamemode)
{

View File

@ -1,7 +1,6 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -15,7 +14,7 @@ public class Command_opme extends TFM_Command
{
TFM_Util.adminAction(sender.getName(), "Opping " + sender.getName(), false);
sender.setOp(true);
sender.sendMessage(TotalFreedomMod.YOU_ARE_OP);
sender.sendMessage(TFM_Command.YOU_ARE_OP);
return true;
}

View File

@ -2,7 +2,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.OfflinePlayer;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -44,7 +43,7 @@ public class Command_ops extends TFM_Command
{
if (!TFM_AdminList.isSuperAdmin(sender))
{
playerMsg(TotalFreedomMod.MSG_NO_PERMS);
playerMsg(TFM_Command.MSG_NO_PERMS);
return true;
}
@ -55,7 +54,7 @@ public class Command_ops extends TFM_Command
player.setOp(false);
if (player.isOnline())
{
playerMsg(player.getPlayer(), TotalFreedomMod.YOU_ARE_NOT_OP);
playerMsg(player.getPlayer(), TFM_Command.YOU_ARE_NOT_OP);
}
}
return true;

View File

@ -2,7 +2,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerData;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.ChatColor;
import org.bukkit.GameMode;
import org.bukkit.command.Command;
@ -27,7 +26,7 @@ public class Command_orbit extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND, ChatColor.RED);
playerMsg(TFM_Command.PLAYER_NOT_FOUND, ChatColor.RED);
return true;
}

View File

@ -1,7 +1,6 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_PermbanList;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
@ -28,7 +27,7 @@ public class Command_permban extends TFM_Command
{
if (!senderIsConsole)
{
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
sender.sendMessage(TFM_Command.MSG_NO_PERMS);
return true;
}
playerMsg("Reloading permban list...", ChatColor.RED);
@ -47,22 +46,22 @@ public class Command_permban extends TFM_Command
{
if (TFM_PermbanList.getPermbannedPlayers().isEmpty())
{
playerMsg(sender, "No permanently banned player names.");
playerMsg("No permanently banned player names.");
}
else
{
playerMsg(sender, TFM_PermbanList.getPermbannedPlayers().size() + " permanently banned players:");
playerMsg(sender, StringUtils.join(TFM_PermbanList.getPermbannedPlayers(), ", "));
playerMsg(TFM_PermbanList.getPermbannedPlayers().size() + " permanently banned players:");
playerMsg(StringUtils.join(TFM_PermbanList.getPermbannedPlayers(), ", "));
}
if (TFM_PermbanList.getPermbannedIps().isEmpty())
{
playerMsg(sender, "No permanently banned IPs.");
playerMsg("No permanently banned IPs.");
}
else
{
playerMsg(sender, TFM_PermbanList.getPermbannedIps().size() + " permanently banned IPs:");
playerMsg(sender, StringUtils.join(TFM_PermbanList.getPermbannedIps(), ", "));
playerMsg(TFM_PermbanList.getPermbannedIps().size() + " permanently banned IPs:");
playerMsg(StringUtils.join(TFM_PermbanList.getPermbannedIps(), ", "));
}
}
}

View File

@ -4,7 +4,6 @@ import java.util.ArrayList;
import java.util.List;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
@ -40,7 +39,7 @@ public class Command_potion extends TFM_Command
{
if (!(TFM_AdminList.isSuperAdmin(sender) || senderIsConsole))
{
playerMsg(TotalFreedomMod.MSG_NO_PERMS);
playerMsg(TFM_Command.MSG_NO_PERMS);
return true;
}
TFM_Util.adminAction(sender.getName(), "Cleared all potion effects from all players", true);
@ -62,7 +61,7 @@ public class Command_potion extends TFM_Command
if (target == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND, ChatColor.RED);
playerMsg(TFM_Command.PLAYER_NOT_FOUND, ChatColor.RED);
return true;
}
}
@ -106,7 +105,7 @@ public class Command_potion extends TFM_Command
if (target == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND, ChatColor.RED);
playerMsg(TFM_Command.PLAYER_NOT_FOUND, ChatColor.RED);
return true;
}
}

View File

@ -1,7 +1,9 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import java.util.ArrayList;
import java.util.List;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -24,26 +26,30 @@ public class Command_qdeop extends TFM_Command
silent = args[1].equalsIgnoreCase("-s");
}
boolean matched_player = false;
final String targetName = args[0].toLowerCase();
String targetName = args[0].toLowerCase();
for (Player player : server.getOnlinePlayers())
final List<String> matchedPlayerNames = new ArrayList<String>();
for (final Player player : server.getOnlinePlayers())
{
if (player.getName().toLowerCase().indexOf(targetName) != -1 || player.getDisplayName().toLowerCase().indexOf(targetName) != -1)
if (player.getName().toLowerCase().contains(targetName) || player.getDisplayName().toLowerCase().contains(targetName))
{
matched_player = true;
if (!silent)
if (player.isOp())
{
TFM_Util.adminAction(sender.getName(), "De-opping " + player.getName(), false);
matchedPlayerNames.add(player.getName());
player.setOp(false);
player.sendMessage(TFM_Command.YOU_ARE_NOT_OP);
}
player.setOp(false);
player.sendMessage(TotalFreedomMod.YOU_ARE_NOT_OP);
}
}
if (!matched_player)
if (!matchedPlayerNames.isEmpty())
{
if (!silent)
{
TFM_Util.adminAction(sender.getName(), "De-opping " + StringUtils.join(matchedPlayerNames, ", "), false);
}
}
else
{
playerMsg("No targets matched.");
}

View File

@ -1,7 +1,9 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import java.util.ArrayList;
import java.util.List;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -24,26 +26,30 @@ public class Command_qop extends TFM_Command
silent = args[1].equalsIgnoreCase("-s");
}
boolean matched_player = false;
final String targetName = args[0].toLowerCase();
String targetName = args[0].toLowerCase();
for (Player player : server.getOnlinePlayers())
final List<String> matchedPlayerNames = new ArrayList<String>();
for (final Player player : server.getOnlinePlayers())
{
if (player.getName().toLowerCase().indexOf(targetName) != -1 || player.getDisplayName().toLowerCase().indexOf(targetName) != -1)
if (player.getName().toLowerCase().contains(targetName) || player.getDisplayName().toLowerCase().contains(targetName))
{
matched_player = true;
if (!silent)
if (!player.isOp())
{
TFM_Util.adminAction(sender.getName(), "Opping " + player.getName(), false);
matchedPlayerNames.add(player.getName());
player.setOp(true);
player.sendMessage(TFM_Command.YOU_ARE_OP);
}
player.setOp(true);
player.sendMessage(TotalFreedomMod.YOU_ARE_OP);
}
}
if (!matched_player)
if (!matchedPlayerNames.isEmpty())
{
if (!silent)
{
TFM_Util.adminAction(sender.getName(), "Opping " + StringUtils.join(matchedPlayerNames, ", "), false);
}
}
else
{
playerMsg("No targets matched.");
}

View File

@ -1,7 +1,6 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerRank;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -38,11 +37,10 @@ public class Command_rank extends TFM_Command
if (player == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}
playerMsg(player.getName() + " is " + TFM_PlayerRank.fromSender(player).getLoginMessage(), ChatColor.AQUA);
return true;

View File

@ -3,7 +3,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import java.util.ArrayList;
import java.util.List;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.ChatColor;
import org.bukkit.Material;
@ -71,7 +70,7 @@ public class Command_ro extends TFM_Command
targetPlayer = getPlayer(args[2]);
if (targetPlayer == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND);
playerMsg(TFM_Command.PLAYER_NOT_FOUND);
return true;
}
}

View File

@ -6,9 +6,7 @@ import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerData;
import me.StevenLawson.TotalFreedomMod.TFM_TwitterHandler;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.OfflinePlayer;
import org.bukkit.command.Command;
@ -40,7 +38,7 @@ public class Command_saconfig extends TFM_Command
{
if (!TFM_AdminList.isSeniorAdmin(sender, true))
{
playerMsg(TotalFreedomMod.MSG_NO_PERMS);
playerMsg(TFM_Command.MSG_NO_PERMS);
return true;
}
@ -54,7 +52,7 @@ public class Command_saconfig extends TFM_Command
// All commands below are superadmin+ commands.
if (!TFM_AdminList.isSuperAdmin(sender))
{
playerMsg(TotalFreedomMod.MSG_NO_PERMS);
playerMsg(TFM_Command.MSG_NO_PERMS);
return true;
}
@ -62,7 +60,7 @@ public class Command_saconfig extends TFM_Command
{
if (senderIsConsole)
{
playerMsg(TotalFreedomMod.NOT_FROM_CONSOLE);
playerMsg(TFM_Command.NOT_FROM_CONSOLE);
return true;
}
@ -158,7 +156,7 @@ public class Command_saconfig extends TFM_Command
if (superadmin == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND);
playerMsg(TFM_Command.PLAYER_NOT_FOUND);
return true;
}
@ -175,7 +173,7 @@ public class Command_saconfig extends TFM_Command
if (playerdata.isFrozen())
{
playerdata.setFrozen(false);
TFM_Util.playerMsg((Player) player, "You have been unfrozen.");
playerMsg((Player) player, "You have been unfrozen.");
}
}
@ -186,7 +184,7 @@ public class Command_saconfig extends TFM_Command
{
if (!TFM_AdminList.isSeniorAdmin(sender))
{
playerMsg(TotalFreedomMod.MSG_NO_PERMS);
playerMsg(TFM_Command.MSG_NO_PERMS);
return true;
}

View File

@ -1,7 +1,6 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.ChatColor;
import org.bukkit.GameMode;
import org.bukkit.Location;
@ -26,7 +25,7 @@ public class Command_smite extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND);
playerMsg(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -102,7 +102,7 @@ public class Command_stfu extends TFM_Command
if (player == null)
{
sender.sendMessage(TotalFreedomMod.PLAYER_NOT_FOUND);
sender.sendMessage(TFM_Command.PLAYER_NOT_FOUND);
return true;
}

View File

@ -2,7 +2,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.GameMode;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -36,7 +35,7 @@ public class Command_survival extends TFM_Command
{
if (!TFM_AdminList.isSuperAdmin(sender) || senderIsConsole)
{
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
sender.sendMessage(TFM_Command.MSG_NO_PERMS);
return true;
}
@ -55,7 +54,7 @@ public class Command_survival extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND);
playerMsg(TFM_Command.PLAYER_NOT_FOUND);
return true;
}
}

View File

@ -5,7 +5,6 @@ import java.util.List;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerData;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
@ -18,73 +17,80 @@ public class Command_tag extends TFM_Command
{
public static final List<String> FORBIDDEN_WORDS = Arrays.asList(new String[]
{
"admin", "owner", "moderator", "developer", "&k"
"admin", "owner", "moderator", "developer", "console"
});
@Override
public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
{
if (args.length < 1)
{
return false;
}
if (args.length == 1)
{
if ("clearall".equals(args[0]))
if ("list".equalsIgnoreCase(args[0]))
{
playerMsg("Tags for all online players:");
for (final Player player : server.getOnlinePlayers())
{
final TFM_PlayerData playerdata = TFM_PlayerData.getPlayerData(player);
if (playerdata.getTag() != null)
{
playerMsg(player.getName() + ": " + playerdata.getTag());
}
}
return true;
}
else if ("clearall".equalsIgnoreCase(args[0]))
{
if (!TFM_AdminList.isSuperAdmin(sender))
{
playerMsg(TotalFreedomMod.MSG_NO_PERMS);
playerMsg(TFM_Command.MSG_NO_PERMS);
return true;
}
TFM_Util.adminAction(sender.getName(), "Removing all tags", false);
int count = 0;
for (Player player : server.getOnlinePlayers())
{
TFM_PlayerData playerdata = TFM_PlayerData.getPlayerData(player);
int count = 0;
for (final Player player : server.getOnlinePlayers())
{
final TFM_PlayerData playerdata = TFM_PlayerData.getPlayerData(player);
if (playerdata.getTag() != null)
{
count++;
TFM_PlayerData.getPlayerData(player).setTag(null);
playerdata.setTag(null);
}
}
playerMsg(count + " tag(s) removed.");
return true;
}
if (senderIsConsole)
else if ("off".equalsIgnoreCase(args[0]))
{
playerMsg("Only in-game players can set tags. Use \"/tag clearall\" to reset all tags.");
if (senderIsConsole)
{
playerMsg("\"/tag off\" can't be used from the console. Use \"/tag clear <player>\" or \"/tag clearall\" instead.");
}
else
{
TFM_PlayerData.getPlayerData(sender_p).setTag(null);
playerMsg("Your tag has been removed.");
}
return true;
}
if ("off".equals(args[0]))
else
{
TFM_PlayerData.getPlayerData(sender_p).setTag(null);
playerMsg("Your tag has been removed.");
return true;
return false;
}
if (ChatColor.stripColor(TFM_Util.colorize(args[0])).length() > 20)
{
playerMsg("That tag is too long [Max = 20 characters, not including color codes].");
return true;
}
return false;
}
if (args.length == 2)
else if (args.length >= 2)
{
if ("clear".equals(args[0]))
if ("clear".equalsIgnoreCase(args[0]))
{
if (!TFM_AdminList.isSuperAdmin(sender))
{
playerMsg(TotalFreedomMod.MSG_NO_PERMS);
playerMsg(TFM_Command.MSG_NO_PERMS);
return true;
}
@ -92,48 +98,62 @@ public class Command_tag extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND);
playerMsg(TFM_Command.PLAYER_NOT_FOUND);
return true;
}
TFM_PlayerData.getPlayerData(player).setTag(null);
playerMsg("Removed " + player.getName() + "'s tag.");
return true;
}
}
if ("set".equals(args[0]))
{
final String tag = StringUtils.join(args, " ", 1, args.length);
if (!TFM_AdminList.isSuperAdmin(sender))
else if ("set".equalsIgnoreCase(args[0]))
{
for (String word : FORBIDDEN_WORDS)
final String inputTag = StringUtils.join(args, " ", 1, args.length);
final String outputTag = TFM_Util.colorize(StringUtils.replaceEachRepeatedly(StringUtils.strip(inputTag),
new String[]
{
"" + ChatColor.COLOR_CHAR, "&k"
},
new String[]
{
"", ""
}
)) + ChatColor.RESET;
if (!TFM_AdminList.isSuperAdmin(sender))
{
if (!tag.toLowerCase().contains(word))
final String rawTag = ChatColor.stripColor(outputTag).toLowerCase();
if (rawTag.length() > 20)
{
continue;
playerMsg("That tag is too long (Max is 20 characters).");
return true;
}
if (word.contains(String.valueOf(ChatColor.COLOR_CHAR)))
for (String word : FORBIDDEN_WORDS)
{
playerMsg("That tag contains a forbidden color-code.");
if (rawTag.contains(word))
{
playerMsg("That tag contains a forbidden word.");
return true;
}
}
else
{
playerMsg("That tag contains a forbidden word.");
}
return true;
}
TFM_PlayerData.getPlayerData(sender_p).setTag(outputTag);
playerMsg("Tag set to '" + outputTag + "'.");
return true;
}
else
{
return false;
}
TFM_PlayerData.getPlayerData(sender_p).setTag(TFM_Util.colorize(tag));
playerMsg("Tag set to " + TFM_Util.colorize(tag));
return true;
}
return false;
else
{
return false;
}
}
}

View File

@ -2,9 +2,7 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_Ban;
import me.StevenLawson.TotalFreedomMod.TFM_BanManager;
import me.StevenLawson.TotalFreedomMod.TFM_ServerInterface;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.command.Command;
@ -27,11 +25,10 @@ public class Command_tban extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND, ChatColor.RED);
playerMsg(TFM_Command.PLAYER_NOT_FOUND, ChatColor.RED);
return true;
}
// strike with lightning effect:
final Location targetPos = player.getLocation();
for (int x = -1; x <= 1; x++)

View File

@ -31,7 +31,7 @@ public class Command_tempban extends TFM_Command
if (player == null)
{
playerMsg(TotalFreedomMod.PLAYER_NOT_FOUND);
playerMsg(TFM_Command.PLAYER_NOT_FOUND);
return true;
}
@ -55,7 +55,6 @@ public class Command_tempban extends TFM_Command
message.append(", Reason: \"").append(reason).append("\"");
}
// strike with lightning effect:
final Location targetPos = player.getLocation();
for (int x = -1; x <= 1; x++)
@ -72,7 +71,6 @@ public class Command_tempban extends TFM_Command
TFM_BanManager.addIpBan(new TFM_Ban(TFM_Util.getIp(player), player.getName(), sender.getName(), expires, reason));
TFM_BanManager.addUuidBan(new TFM_Ban(TFM_Util.getUniqueId(player), player.getName(), sender.getName(), expires, reason));
player.kickPlayer(sender.getName() + " - " + message.toString());
return true;

View File

@ -1,6 +1,7 @@
package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.Config.TFM_ConfigEntry;
import me.StevenLawson.TotalFreedomMod.Config.TFM_MainConfig;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_BanManager;
import me.StevenLawson.TotalFreedomMod.TFM_CommandBlocker;
@ -13,6 +14,9 @@ import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
/*
* See https://github.com/TotalFreedom/License - This file may not be edited or removed.
*/
@CommandPermissions(level = AdminLevel.ALL, source = SourceType.BOTH)
@CommandParameters(description = "Shows information about TotalFreedomMod or reloads it", usage = "/<command> [reload]")
public class Command_tfm extends TFM_Command
@ -29,17 +33,17 @@ public class Command_tfm extends TFM_Command
if (!TFM_AdminList.isSuperAdmin(sender))
{
playerMsg(TotalFreedomMod.MSG_NO_PERMS);
playerMsg(TFM_Command.MSG_NO_PERMS);
return true;
}
TFM_MainConfig.load();
TFM_AdminList.load();
TFM_PermbanList.load();
TFM_PlayerList.load();
TFM_BanManager.load();
TFM_CommandBlocker.load();
final String message = String.format("%s v%s.%s reloaded.",
TotalFreedomMod.pluginName,
TotalFreedomMod.pluginVersion,

View File

@ -3,7 +3,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import java.io.File;
import me.StevenLawson.TotalFreedomMod.TFM_Log;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -28,7 +27,7 @@ public class Command_tfupdate extends TFM_Command
if (!sender.getName().equalsIgnoreCase("madgeek1450"))
{
playerMsg(TotalFreedomMod.MSG_NO_PERMS);
playerMsg(TFM_Command.MSG_NO_PERMS);
return true;
}

View File

@ -141,7 +141,7 @@ public class Command_toggle extends TFM_Command
}
catch (NumberFormatException ex)
{
TFM_Util.playerMsg(sender, ex.getMessage());
playerMsg(ex.getMessage());
return true;
}
}

View File

@ -3,7 +3,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.Config.TFM_ConfigEntry;
import me.StevenLawson.TotalFreedomMod.TFM_TwitterHandler;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -18,7 +17,7 @@ public class Command_twitter extends TFM_Command
{
if (!TFM_ConfigEntry.TWITTERBOT_ENABLED.getBoolean())
{
TFM_Util.playerMsg(sender, "TwitterBot has been disabled in config.", ChatColor.RED);
playerMsg("TwitterBot has been disabled in config.", ChatColor.RED);
return true;
}
@ -36,7 +35,7 @@ public class Command_twitter extends TFM_Command
if (args[1].startsWith("@"))
{
TFM_Util.playerMsg(sender, "Please do not prefix your twitter username with '@'");
playerMsg("Please do not prefix your twitter username with '@'");
return true;
}
@ -44,28 +43,28 @@ public class Command_twitter extends TFM_Command
if ("ok".equals(reply))
{
TFM_Util.playerMsg(sender, "Your twitter handle has been set to: " + ChatColor.AQUA + "@" + args[1] + ChatColor.GRAY + ".");
playerMsg("Your twitter handle has been set to: " + ChatColor.AQUA + "@" + args[1] + ChatColor.GRAY + ".");
}
else if ("disabled".equals(reply))
{
TFM_Util.playerMsg(sender, "TwitterBot has been temporarily disabled,, please wait until it get re-enabled", ChatColor.RED);
playerMsg("TwitterBot has been temporarily disabled,, please wait until it get re-enabled", ChatColor.RED);
}
else if ("failed".equals(reply))
{
TFM_Util.playerMsg(sender, "There was a problem querying the database, please let a developer know.", ChatColor.RED);
playerMsg("There was a problem querying the database, please let a developer know.", ChatColor.RED);
}
else if ("false".equals(reply))
{
TFM_Util.playerMsg(sender, "There was a problem with the database, please let a developer know.", ChatColor.RED);
playerMsg("There was a problem with the database, please let a developer know.", ChatColor.RED);
}
else if ("cannotauth".equals(reply))
{
TFM_Util.playerMsg(sender, "The database password is incorrect, please let a developer know.", ChatColor.RED);
playerMsg("The database password is incorrect, please let a developer know.", ChatColor.RED);
}
else
{
TFM_Util.playerMsg(sender, "An unknown error occurred, please contact a developer", ChatColor.RED);
TFM_Util.playerMsg(sender, "Response code: " + reply);
playerMsg("An unknown error occurred, please contact a developer", ChatColor.RED);
playerMsg("Response code: " + reply);
}
return true;
}
@ -78,33 +77,33 @@ public class Command_twitter extends TFM_Command
if ("info".equals(args[0]))
{
String reply = TFM_TwitterHandler.getTwitter(sender.getName());
TFM_Util.playerMsg(sender, "-- Twitter Information --", ChatColor.BLUE);
TFM_Util.playerMsg(sender, "Using this feature, you can re-super yourself using twitter.");
TFM_Util.playerMsg(sender, "You can set your twitter handle using " + ChatColor.AQUA + "/twitter set [twittername]");
TFM_Util.playerMsg(sender, "Then, you can verify yourself by tweeting " + ChatColor.AQUA + "@TFUpdates #superme");
playerMsg("-- Twitter Information --", ChatColor.BLUE);
playerMsg("Using this feature, you can re-super yourself using twitter.");
playerMsg("You can set your twitter handle using " + ChatColor.AQUA + "/twitter set [twittername]");
playerMsg("Then, you can verify yourself by tweeting " + ChatColor.AQUA + "@TFUpdates #superme");
if ("notfound".equals(reply))
{
TFM_Util.playerMsg(sender, "You currently have " + ChatColor.RED + "no" + ChatColor.BLUE + " Twitter handle set.", ChatColor.BLUE);
playerMsg("You currently have " + ChatColor.RED + "no" + ChatColor.BLUE + " Twitter handle set.", ChatColor.BLUE);
}
else if ("disabled".equals(reply))
{
TFM_Util.playerMsg(sender, "TwitterBot has been temporarily disabled, please wait until re-enabled", ChatColor.RED);
playerMsg("TwitterBot has been temporarily disabled, please wait until re-enabled", ChatColor.RED);
}
else if ("failed".equals(reply))
{
TFM_Util.playerMsg(sender, "There was a problem querying the database, please let a developer know.", ChatColor.RED);
playerMsg("There was a problem querying the database, please let a developer know.", ChatColor.RED);
}
else if ("false".equals(reply))
{
TFM_Util.playerMsg(sender, "There was a problem with the database, please let a developer know.", ChatColor.RED);
playerMsg("There was a problem with the database, please let a developer know.", ChatColor.RED);
}
else if ("cannotauth".equals(reply))
{
TFM_Util.playerMsg(sender, "The database password is incorrect, please let a developer know.", ChatColor.RED);
playerMsg("The database password is incorrect, please let a developer know.", ChatColor.RED);
}
else
{
TFM_Util.playerMsg(sender, "Your current twitter handle: " + ChatColor.AQUA + "@" + reply + ChatColor.BLUE + ".", ChatColor.BLUE);
playerMsg("Your current twitter handle: " + ChatColor.AQUA + "@" + reply + ChatColor.BLUE + ".", ChatColor.BLUE);
}
return true;
}
@ -113,13 +112,13 @@ public class Command_twitter extends TFM_Command
{
if (!sender.getName().equalsIgnoreCase("DarthSalamon"))
{
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
sender.sendMessage(TFM_Command.MSG_NO_PERMS);
return true;
}
TFM_Util.adminAction(sender.getName(), ("enable".equals(args[0]) ? "Ena" : "Disa") + "bling Twitterbot", true);
String reply = TFM_TwitterHandler.setEnabled(args[0] + "d");
TFM_Util.playerMsg(sender, "Reply: " + reply);
playerMsg("Reply: " + reply);
return true;
}

View File

@ -109,7 +109,6 @@ public class Command_uuid extends TFM_Command
}
return false;
}

View File

@ -3,7 +3,6 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_ServerInterface;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.OfflinePlayer;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -58,7 +57,7 @@ public class Command_whitelist extends TFM_Command
// all commands past this line are superadmin-only
if (!(senderIsConsole || TFM_AdminList.isSuperAdmin(sender)))
{
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
sender.sendMessage(TFM_Command.MSG_NO_PERMS);
return true;
}
@ -152,7 +151,7 @@ public class Command_whitelist extends TFM_Command
// all commands past this line are console/telnet only
if (!senderIsConsole)
{
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
sender.sendMessage(TFM_Command.MSG_NO_PERMS);
return true;
}

View File

@ -13,6 +13,12 @@ import org.bukkit.entity.Player;
public abstract class TFM_Command
{
public static final String MSG_NO_PERMS = ChatColor.YELLOW + "You do not have permission to use this command.";
public static final String YOU_ARE_OP = ChatColor.YELLOW + "You are now op!";
public static final String YOU_ARE_NOT_OP = ChatColor.YELLOW + "You are no longer op!";
public static final String NOT_FROM_CONSOLE = "This command may not be used from the console.";
public static final String PLAYER_NOT_FOUND = ChatColor.GRAY + "Player not found!";
protected TotalFreedomMod plugin;
protected Server server;
private CommandSender commandSender;

View File

@ -40,7 +40,6 @@ public class TFM_CommandHandler
StringUtils.join(args, " ")), true);
}
final TFM_Command dispatcher;
try
{
@ -62,7 +61,7 @@ public class TFM_CommandHandler
if (!dispatcher.senderHasPermission())
{
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
sender.sendMessage(TFM_Command.MSG_NO_PERMS);
return true;
}

View File

@ -4,7 +4,7 @@ import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import me.StevenLawson.TotalFreedomMod.TFM_Util;
import org.apache.commons.lang.exception.ExceptionUtils;
import net.minecraft.util.org.apache.commons.lang3.exception.ExceptionUtils;
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.plugin.Plugin;

View File

@ -629,9 +629,8 @@ public class TFM_PlayerListener implements Listener
// Set the tag
if (playerdata.getTag() != null)
{
player.setDisplayName((playerdata.getTag() + " " + player.getDisplayName().replaceAll(" ", "")));
event.setFormat("<" + playerdata.getTag().replaceAll("%", "%%") + " %1$s> %2$s");
}
}
catch (Exception ex)
{
@ -857,26 +856,37 @@ public class TFM_PlayerListener implements Listener
@EventHandler(priority = EventPriority.HIGH)
public static void onPlayerJoinEvent(PlayerJoinEvent event)
{
Player player = event.getPlayer();
final Player player = event.getPlayer();
String name = player.getName();
if (TFM_Util.DEVELOPERS.contains(player.getName()))
{
player.setPlayerListName(ChatColor.DARK_PURPLE + player.getName());
name = ChatColor.DARK_PURPLE + name;
TFM_PlayerData.getPlayerData(player).setTag("&8[&5Developer&8]");
}
else if (TFM_AdminList.isSeniorAdmin(player))
{
player.setPlayerListName(ChatColor.LIGHT_PURPLE + player.getName());
name = ChatColor.LIGHT_PURPLE + name;
TFM_PlayerData.getPlayerData(player).setTag("&8[&dSenior Admin&8]");
}
else if (TFM_AdminList.isTelnetAdmin(player, true))
{
player.setPlayerListName(ChatColor.DARK_GREEN + player.getName());
name = ChatColor.DARK_GREEN + name;
TFM_PlayerData.getPlayerData(player).setTag("&8[&2Telnet Admin&8]");
}
else if (TFM_AdminList.isSuperAdmin(player))
{
player.setPlayerListName(ChatColor.AQUA + player.getName());
name = ChatColor.AQUA + name;
TFM_PlayerData.getPlayerData(player).setTag("&8[&BSuper Admin&8]");
}
try
{
player.setPlayerListName(StringUtils.substring(name, 0, 16));
}
catch (IllegalArgumentException ex)
{
}
}
}

View File

@ -1,12 +1,16 @@
package me.StevenLawson.TotalFreedomMod.Listener;
import java.util.Iterator;
import java.util.Map;
import me.StevenLawson.BukkitTelnet.api.TelnetCommandEvent;
import me.StevenLawson.BukkitTelnet.api.TelnetRequestDataTagsEvent;
import me.StevenLawson.BukkitTelnet.api.TelnetPreLoginEvent;
import me.StevenLawson.TotalFreedomMod.Bridge.TFM_EssentialsBridge;
import me.StevenLawson.TotalFreedomMod.TFM_CommandBlocker;
import me.StevenLawson.TotalFreedomMod.TFM_Admin;
import me.StevenLawson.TotalFreedomMod.TFM_AdminList;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import me.StevenLawson.TotalFreedomMod.TFM_PlayerData;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
@ -25,7 +29,7 @@ public class TFM_TelnetListener implements Listener
final TFM_Admin admin = TFM_AdminList.getEntryByIp(ip, true);
if (admin == null || !admin.isTelnetAdmin())
if (admin == null || !admin.isActivated() || !admin.isTelnetAdmin())
{
return;
}
@ -42,4 +46,38 @@ public class TFM_TelnetListener implements Listener
event.setCancelled(true);
}
}
@EventHandler(priority = EventPriority.NORMAL)
public void onTelnetRequestDataTags(TelnetRequestDataTagsEvent event)
{
final Iterator<Map.Entry<Player, Map<String, Object>>> it = event.getDataTags().entrySet().iterator();
while (it.hasNext())
{
final Map.Entry<Player, Map<String, Object>> entry = it.next();
final Player player = entry.getKey();
final Map<String, Object> playerTags = entry.getValue();
boolean isAdmin = false;
boolean isTelnetAdmin = false;
boolean isSeniorAdmin = false;
final TFM_Admin admin = TFM_AdminList.getEntry(player);
if (admin != null)
{
boolean isActivated = admin.isActivated();
isAdmin = isActivated;
isTelnetAdmin = isActivated && admin.isTelnetAdmin();
isSeniorAdmin = isActivated && admin.isSeniorAdmin();
}
playerTags.put("tfm.admin.isAdmin", isAdmin);
playerTags.put("tfm.admin.isTelnetAdmin", isTelnetAdmin);
playerTags.put("tfm.admin.isSeniorAdmin", isSeniorAdmin);
playerTags.put("tfm.playerdata.getTag", TFM_PlayerData.getPlayerData(player).getTag());
playerTags.put("tfm.essentialsBridge.getNickname", TFM_EssentialsBridge.getNickname(player.getName()));
}
}
}

View File

@ -5,7 +5,7 @@ import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.UUID;
import org.apache.commons.lang.StringUtils;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.configuration.ConfigurationSection;
public class TFM_Admin

View File

@ -1,6 +1,5 @@
package me.StevenLawson.TotalFreedomMod;
import java.io.File;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
@ -22,7 +21,6 @@ import org.bukkit.OfflinePlayer;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.entity.Player;
import org.bukkit.util.FileUtil;
public class TFM_AdminList
{
@ -136,7 +134,6 @@ public class TFM_AdminList
admin.isSeniorAdmin(),
admin.isActivated());
newAdmin.addIps(admin.getIps());
adminList.remove(oldUuid);
@ -222,7 +219,6 @@ public class TFM_AdminList
telnetUUIDs.add(uuid);
}
if (admin.isSeniorAdmin())
{
seniorUUIDs.add(uuid);
@ -413,7 +409,6 @@ public class TFM_AdminList
}
}
if (!(sender instanceof Player))
{
return seniorConsoleNames.contains(sender.getName())
@ -443,7 +438,6 @@ public class TFM_AdminList
return true;
}
if (superIps.contains(TFM_Util.getIp(player)))
{
return true;

View File

@ -46,7 +46,7 @@ import org.bukkit.util.Vector;
*
* This class is a way to discourage amateur server operators who like to share binary copies of our plugin and promote it as their own work.
*
* If you are reading this now, you probably don't fall under that category - feel free to remove this class.
* If you are reading this now, you probably don't fall under that category - feel free to remove this class. Note: You may not edit this class.
*
* - Madgeek and Darth
*/

View File

@ -31,8 +31,8 @@ public class TFM_Heartbeat extends BukkitRunnable
{
lastRan = System.currentTimeMillis();
final boolean doAwayKickCheck =
TFM_ConfigEntry.AUTOKICK_ENABLED.getBoolean()
final boolean doAwayKickCheck
= TFM_ConfigEntry.AUTOKICK_ENABLED.getBoolean()
&& TFM_EssentialsBridge.isEssentialsEnabled()
&& ((server.getOnlinePlayers().length / server.getMaxPlayers()) > TFM_ConfigEntry.AUTOKICK_THRESHOLD.getDouble());

View File

@ -7,6 +7,7 @@ import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.UUID;
import me.StevenLawson.TotalFreedomMod.Bridge.TFM_EssentialsBridge;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.GameMode;
@ -72,7 +73,6 @@ public class TFM_PlayerData
return playerdata;
}
Iterator<Entry<Player, TFM_PlayerData>> it = userinfo.entrySet().iterator();
while (it.hasNext())
{
@ -391,7 +391,7 @@ public class TFM_PlayerData
player.setOp(false);
player.setGameMode(GameMode.SURVIVAL);
player.setFlying(false);
player.setDisplayName(player.getName());
TFM_EssentialsBridge.setNickname(player.getName(), player.getName());
player.closeInventory();
player.setTotalExperience(0);

View File

@ -70,7 +70,6 @@ public enum TFM_PlayerRank
return DEVELOPER;
}
final TFM_Admin entry = TFM_AdminList.getEntry((Player) sender);
final TFM_PlayerRank rank;

View File

@ -1,7 +1,14 @@
package me.StevenLawson.TotalFreedomMod;
import me.StevenLawson.TotalFreedomMod.Config.TFM_ConfigEntry;
import java.io.*;
import java.io.File;
import java.io.FileFilter;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.lang.reflect.Field;
import java.net.URL;
import java.nio.channels.Channels;
@ -10,12 +17,24 @@ import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Random;
import java.util.Set;
import java.util.UUID;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import me.StevenLawson.TotalFreedomMod.Config.TFM_Config;
import me.StevenLawson.TotalFreedomMod.Config.TFM_ConfigEntry;
import net.minecraft.util.org.apache.commons.io.FileUtils;
import net.minecraft.util.org.apache.commons.lang3.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
@ -49,6 +68,7 @@ public class TFM_Util
{
private static final Map<String, Integer> ejectTracker = new HashMap<String, Integer>();
public static final Map<String, EntityType> mobtypes = new HashMap<String, EntityType>();
// See https://github.com/TotalFreedom/License - None of the listed names may be removed.
public static final List<String> DEVELOPERS = Arrays.asList("Madgeek1450", "DarthSalamon", "AcidicCyanide", "wild1145", "WickedGamingUK");
private static final Random RANDOM = new Random();
public static String DATE_STORAGE_FORMAT = "EEE, d MMM yyyy HH:mm:ss Z";
@ -261,35 +281,31 @@ public class TFM_Util
return escapedIp.trim().replaceAll("_", "\\.");
}
public static void gotoWorld(CommandSender sender, String targetworld)
public static void gotoWorld(Player player, String targetWorld)
{
if (sender instanceof Player)
if (player == null)
{
Player player = (Player) sender;
return;
}
if (player.getWorld().getName().equalsIgnoreCase(targetworld))
if (player.getWorld().getName().equalsIgnoreCase(targetWorld))
{
playerMsg(player, "Going to main world.", ChatColor.GRAY);
player.teleport(Bukkit.getWorlds().get(0).getSpawnLocation());
return;
}
for (World world : Bukkit.getWorlds())
{
if (world.getName().equalsIgnoreCase(targetWorld))
{
sender.sendMessage(ChatColor.GRAY + "Going to main world.");
player.teleport(Bukkit.getWorlds().get(0).getSpawnLocation());
playerMsg(player, "Going to world: " + targetWorld, ChatColor.GRAY);
player.teleport(world.getSpawnLocation());
return;
}
for (World world : Bukkit.getWorlds())
{
if (world.getName().equalsIgnoreCase(targetworld))
{
sender.sendMessage(ChatColor.GRAY + "Going to world: " + targetworld);
player.teleport(world.getSpawnLocation());
return;
}
}
sender.sendMessage(ChatColor.GRAY + "World " + targetworld + " not found.");
}
else
{
sender.sendMessage(TotalFreedomMod.NOT_FROM_CONSOLE);
}
playerMsg(player, "World " + targetWorld + " not found.", ChatColor.GRAY);
}
public static String decolorize(String string)

View File

@ -5,7 +5,6 @@ import me.StevenLawson.TotalFreedomMod.World.TFM_Flatlands;
import me.StevenLawson.TotalFreedomMod.World.TFM_AdminWorld;
import me.StevenLawson.TotalFreedomMod.Config.TFM_ConfigEntry;
import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
import java.io.InputStream;
import java.util.Date;
@ -15,8 +14,6 @@ import java.util.Properties;
import me.StevenLawson.TotalFreedomMod.Commands.TFM_CommandLoader;
import me.StevenLawson.TotalFreedomMod.HTTPD.TFM_HTTPD_Manager;
import me.StevenLawson.TotalFreedomMod.Listener.*;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Server;
import org.bukkit.World;
import org.bukkit.command.Command;
@ -38,13 +35,6 @@ public class TotalFreedomMod extends JavaPlugin
public static final String PROTECTED_AREA_FILE = "protectedareas.dat";
public static final String SAVED_FLAGS_FILE = "savedflags.dat";
//
public static final String MSG_NO_PERMS = ChatColor.YELLOW + "You do not have permission to use this command.";
public static final String YOU_ARE_OP = ChatColor.YELLOW + "You are now op!";
public static final String YOU_ARE_NOT_OP = ChatColor.YELLOW + "You are no longer op!";
public static final String CAKE_LYRICS = "But there's no sense crying over every mistake. You just keep on trying till you run out of cake.";
public static final String NOT_FROM_CONSOLE = "This command may not be used from the console.";
public static final String PLAYER_NOT_FOUND = ChatColor.GRAY + "Player not found!";
//
public static String buildNumber = "1";
public static String buildDate = TotalFreedomMod.buildDate = TFM_Util.dateToString(new Date());
public static String buildCreator = "Unknown";

View File

@ -56,4 +56,4 @@ public class CleanroomBlockPopulator extends BlockPopulator
}
}
}
}
}

View File

@ -233,4 +233,4 @@ public class CleanroomChunkGenerator extends ChunkGenerator
return new Location(world, 0, world.getHighestBlockYAt(0, 0), 0);
}
}
}