Use Allman style, please!

Code cleanup.
Switched to StringUtils.join, we are re-inventing the wheel :D
Added whitelist support to TFM_PlayerListener auth code.
@Deprecated some utility methods, will remove shortly.
This commit is contained in:
Steven Lawson 2012-09-17 19:46:59 -04:00
parent c9c1b7519d
commit 3feec18131
8 changed files with 311 additions and 329 deletions

View File

@ -2,11 +2,8 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import me.StevenLawson.TotalFreedomMod.TFM_Util; import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod; import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.GameMode; import org.bukkit.GameMode;
import org.bukkit.command.Command; import org.bukkit.command.Command;
@ -15,28 +12,24 @@ import org.bukkit.entity.Player;
public class Command_doom extends TFM_Command public class Command_doom extends TFM_Command
{ {
public String[] p = public final static List<String> ALLOWED_USERS = Arrays.asList(
{
"madgeek", "madgeek",
"darth", "darth",
"madgeek1450", "madgeek1450",
"mark", "mark",
"markbyron", "markbyron",
"darthsalamon" "darthsalamon");
};
public List<String> players = Arrays.asList(p);
@Override @Override
public boolean run(final CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) public boolean run(final CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
{ {
if(!(senderIsConsole && players.contains(sender.getName().toLowerCase()))) if (!(senderIsConsole && ALLOWED_USERS.contains(sender.getName().toLowerCase())))
{ {
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS); sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
return true; return true;
} }
if(args.length != 1) if (args.length != 1)
{ {
return false; return false;
} }
@ -46,20 +39,19 @@ public class Command_doom extends TFM_Command
{ {
p = getPlayer(args[0]); p = getPlayer(args[0]);
} }
catch(CantFindPlayerException ex) catch (CantFindPlayerException ex)
{ {
sender.sendMessage(ex.getMessage()); sender.sendMessage(ex.getMessage());
return true; return true;
} }
TFM_Util.adminAction(sender.getName(), "Casting oblivion over " + p.getName(), true); TFM_Util.adminAction(sender.getName(), "Casting oblivion over " + p.getName(), true);
TFM_Util.bcastMsg(p.getName() + " will be completely obliviated!", ChatColor.RED); TFM_Util.bcastMsg(p.getName() + " will be completely obliviated!", ChatColor.RED);
final String IP = p.getAddress().getAddress().getHostAddress().trim(); final String IP = p.getAddress().getAddress().getHostAddress().trim();
// remove from superadmin // remove from superadmin
if(TFM_Util.isUserSuperadmin(p)) if (TFM_Util.isUserSuperadmin(p))
{ {
server.dispatchCommand(sender, "saconfig delete " + p.getName()); server.dispatchCommand(sender, "saconfig delete " + p.getName());
} }
@ -71,10 +63,10 @@ public class Command_doom extends TFM_Command
p.setOp(false); p.setOp(false);
// ban IP // ban IP
Bukkit.banIP(IP); TFM_Util.banIP(IP, null, null, null);
// ban name // ban name
p.setBanned(true); TFM_Util.banUsername(p.getName(), null, null, null);
// set gamemode to survival // set gamemode to survival
p.setGameMode(GameMode.SURVIVAL); p.setGameMode(GameMode.SURVIVAL);
@ -92,20 +84,21 @@ public class Command_doom extends TFM_Command
server.getScheduler().scheduleAsyncDelayedTask(plugin, new Runnable() server.getScheduler().scheduleAsyncDelayedTask(plugin, new Runnable()
{ {
@Override @Override
public void run() { public void run()
{
// strike lightning // strike lightning
p.getWorld().strikeLightning(p.getLocation()); p.getWorld().strikeLightning(p.getLocation());
// kill (if not done already) // kill (if not done already)
p.setHealth(0); p.setHealth(0);
} }
}, 40L); // 2 seconds }, 40L); // 2 seconds
server.getScheduler().scheduleAsyncDelayedTask(plugin, new Runnable() server.getScheduler().scheduleAsyncDelayedTask(plugin, new Runnable()
{ {
@Override @Override
public void run() { public void run()
{
// message // message
TFM_Util.adminAction(sender.getName(), "Banning " + p.getName() + ", IP: " + IP, true); TFM_Util.adminAction(sender.getName(), "Banning " + p.getName() + ", IP: " + IP, true);
@ -115,7 +108,6 @@ public class Command_doom extends TFM_Command
// kick player // kick player
p.kickPlayer(ChatColor.RED + "FUCKOFF, and get your shit together!"); p.kickPlayer(ChatColor.RED + "FUCKOFF, and get your shit together!");
} }
}, 60L); // 3 seconds }, 60L); // 3 seconds
return true; return true;

View File

@ -2,6 +2,7 @@ package me.StevenLawson.TotalFreedomMod.Commands;
import me.StevenLawson.TotalFreedomMod.TFM_Util; import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod; import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import org.apache.commons.lang.StringUtils;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.OfflinePlayer; import org.bukkit.OfflinePlayer;
import org.bukkit.command.Command; import org.bukkit.command.Command;
@ -26,10 +27,7 @@ public class Command_ops extends TFM_Command
if (args[0].equalsIgnoreCase("list")) if (args[0].equalsIgnoreCase("list"))
{ {
String ops = TFM_Util.arrayToString(server.getOperators()); TFM_Util.playerMsg(sender, "Operators: " + StringUtils.join(server.getOperators(), ", "));
TFM_Util.playerMsg(sender, "Operators:");
TFM_Util.playerMsg(sender, ops);
return true; return true;
} }

View File

@ -17,7 +17,9 @@ public class Command_rd extends TFM_Command
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS); sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
return true; return true;
} }
TFM_Util.adminAction(sender.getName(), "Removing all server entities", false);
//This terminology is wrong, this doesn't remove *all* entities, by far. - Madgeek
TFM_Util.adminAction(sender.getName(), "Removing all server entities.", false);
sender.sendMessage(ChatColor.GRAY + String.valueOf(TFM_Util.wipeEntities(true, true)) + " enties removed."); sender.sendMessage(ChatColor.GRAY + String.valueOf(TFM_Util.wipeEntities(true, true)) + " enties removed.");
return true; return true;

View File

@ -64,15 +64,15 @@ public class Command_stfu extends TFM_Command
return true; return true;
} }
if(args[0].equalsIgnoreCase("all")) if (args[0].equalsIgnoreCase("all"))
{ {
TFM_Util.adminAction(sender.getName(), "Muting all non-Superadmins", true); TFM_Util.adminAction(sender.getName(), "Muting all non-Superadmins", true);
TFM_UserInfo playerdata; TFM_UserInfo playerdata;
int counter = 0; int counter = 0;
for(Player p : server.getOnlinePlayers()) for (Player p : server.getOnlinePlayers())
{ {
if(!TFM_Util.isUserSuperadmin(p)) if (!TFM_Util.isUserSuperadmin(p))
{ {
playerdata = TFM_UserInfo.getPlayerData(p); playerdata = TFM_UserInfo.getPlayerData(p);
playerdata.setMuted(true); playerdata.setMuted(true);
@ -81,7 +81,7 @@ public class Command_stfu extends TFM_Command
} }
TFM_Util.playerMsg(sender, "Muted " + counter + " players."); TFM_Util.playerMsg(sender, "Muted " + counter + " players.");
return true;
} }
Player p; Player p;
@ -101,7 +101,6 @@ public class Command_stfu extends TFM_Command
TFM_Util.adminAction(sender.getName(), "Unmuting " + p.getName(), true); TFM_Util.adminAction(sender.getName(), "Unmuting " + p.getName(), true);
playerdata.setMuted(false); playerdata.setMuted(false);
TFM_Util.playerMsg(sender, "Unmuted " + p.getName()); TFM_Util.playerMsg(sender, "Unmuted " + p.getName());
return true;
} }
else else
{ {

View File

@ -1,8 +1,10 @@
package me.StevenLawson.TotalFreedomMod.Commands; package me.StevenLawson.TotalFreedomMod.Commands;
import java.util.Set;
import me.StevenLawson.TotalFreedomMod.TFM_Util; import me.StevenLawson.TotalFreedomMod.TFM_Util;
import me.StevenLawson.TotalFreedomMod.TotalFreedomMod; import me.StevenLawson.TotalFreedomMod.TotalFreedomMod;
import net.minecraft.server.MinecraftServer;
import org.apache.commons.lang.StringUtils;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.OfflinePlayer; import org.bukkit.OfflinePlayer;
import org.bukkit.command.Command; import org.bukkit.command.Command;
@ -14,29 +16,26 @@ public class Command_whitelist extends TFM_Command
@Override @Override
public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
{ {
if(args.length < 1) if (args.length < 1)
{ {
return false; return false;
} }
if(!sender.isOp()) if (!sender.isOp())
{ {
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS); sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
return true; return true;
} }
// list // list
if(args[0].equalsIgnoreCase("list")) if (args[0].equalsIgnoreCase("list"))
{ {
String players = TFM_Util.arrayToString(server.getWhitelistedPlayers()); TFM_Util.playerMsg(sender, "Whitelisted players: " + StringUtils.join(server.getWhitelistedPlayers(), ", "));
TFM_Util.playerMsg(sender, "Whitelisted players:");
TFM_Util.playerMsg(sender, players);
return true; return true;
} }
// count // count
if(args[0].equalsIgnoreCase("count")) if (args[0].equalsIgnoreCase("count"))
{ {
int onlineWPs = 0; int onlineWPs = 0;
int offlineWPs = 0; int offlineWPs = 0;
@ -63,14 +62,14 @@ public class Command_whitelist extends TFM_Command
} }
// all commands past this line are superadmin-only // all commands past this line are superadmin-only
if(!(senderIsConsole || TFM_Util.isUserSuperadmin(sender))) if (!(senderIsConsole || TFM_Util.isUserSuperadmin(sender)))
{ {
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS); sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
return true; return true;
} }
// on // on
if(args[0].equalsIgnoreCase("on")) if (args[0].equalsIgnoreCase("on"))
{ {
TFM_Util.adminAction(sender.getName(), "Turning the whitelist on", false); TFM_Util.adminAction(sender.getName(), "Turning the whitelist on", false);
server.setWhitelist(true); server.setWhitelist(true);
@ -78,7 +77,7 @@ public class Command_whitelist extends TFM_Command
} }
// off // off
if(args[0].equalsIgnoreCase("off")) if (args[0].equalsIgnoreCase("off"))
{ {
TFM_Util.adminAction(sender.getName(), "Turning the whitelist off", false); TFM_Util.adminAction(sender.getName(), "Turning the whitelist off", false);
server.setWhitelist(false); server.setWhitelist(false);
@ -86,9 +85,9 @@ public class Command_whitelist extends TFM_Command
} }
// add // add
if(args[0].equalsIgnoreCase("add")) if (args[0].equalsIgnoreCase("add"))
{ {
if(args.length < 2) if (args.length < 2)
{ {
return false; return false;
} }
@ -98,9 +97,9 @@ public class Command_whitelist extends TFM_Command
{ {
p = getPlayer(args[1]); p = getPlayer(args[1]);
} }
catch(CantFindPlayerException ex) catch (CantFindPlayerException ex)
{ {
if(!senderIsConsole) if (!senderIsConsole)
{ {
sender.sendMessage(ex.getMessage()); sender.sendMessage(ex.getMessage());
sender.sendMessage(ChatColor.YELLOW + "You don't have permissions to whitelist offline players"); sender.sendMessage(ChatColor.YELLOW + "You don't have permissions to whitelist offline players");
@ -111,15 +110,16 @@ public class Command_whitelist extends TFM_Command
p = server.getOfflinePlayer(args[0]); p = server.getOfflinePlayer(args[0]);
} }
} }
TFM_Util.adminAction(sender.getName(), "Adding " + p.getName() + " to the whitelist", false); TFM_Util.adminAction(sender.getName(), "Adding " + p.getName() + " to the whitelist", false);
p.setWhitelisted(true); p.setWhitelisted(true);
return true; return true;
} }
// remove // remove
if(args[0].equalsIgnoreCase("remove")) if (args[0].equalsIgnoreCase("remove"))
{ {
if(args.length < 2) if (args.length < 2)
{ {
return false; return false;
} }
@ -129,12 +129,12 @@ public class Command_whitelist extends TFM_Command
{ {
p = getPlayer(args[1]); p = getPlayer(args[1]);
} }
catch(CantFindPlayerException ex) catch (CantFindPlayerException ex)
{ {
p = server.getOfflinePlayer(args[0]); p = server.getOfflinePlayer(args[0]);
} }
if(p.isWhitelisted()) if (p.isWhitelisted())
{ {
TFM_Util.adminAction(sender.getName(), "Removing " + p.getName() + "from the whitelist", false); TFM_Util.adminAction(sender.getName(), "Removing " + p.getName() + "from the whitelist", false);
p.setWhitelisted(false); p.setWhitelisted(false);
@ -149,13 +149,13 @@ public class Command_whitelist extends TFM_Command
} }
// addall // addall
if(args[0].equalsIgnoreCase("addall")) if (args[0].equalsIgnoreCase("addall"))
{ {
TFM_Util.adminAction(sender.getName(), "Adding all online players to the whitelist", false); TFM_Util.adminAction(sender.getName(), "Adding all online players to the whitelist", false);
int counter = 0; int counter = 0;
for(Player p : server.getOnlinePlayers()) for (Player p : server.getOnlinePlayers())
{ {
if(!p.isWhitelisted()) if (!p.isWhitelisted())
{ {
p.setWhitelisted(true); p.setWhitelisted(true);
counter++; counter++;
@ -167,23 +167,19 @@ public class Command_whitelist extends TFM_Command
} }
// all commands past this line are console/telnet only // all commands past this line are console/telnet only
if(!senderIsConsole) if (!senderIsConsole)
{ {
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS); sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
return true; return true;
} }
//purge //purge
if(args[0].equalsIgnoreCase("purge")) if (args[0].equalsIgnoreCase("purge"))
{ {
Set whitelisted = MinecraftServer.getServer().getServerConfigurationManager().getWhitelisted();
TFM_Util.adminAction(sender.getName(), "Removing all players from the whitelist", true); TFM_Util.adminAction(sender.getName(), "Removing all players from the whitelist", true);
int counter = 0; TFM_Util.playerMsg(sender, "Removed " + whitelisted.size() + " players from the whitelist.");
for(OfflinePlayer p : server.getWhitelistedPlayers()) whitelisted.clear();
{
p.setWhitelisted(false);
counter++;
}
TFM_Util.playerMsg(sender, "Removed " + counter + " players from the whitelist");
return true; return true;
} }

View File

@ -231,24 +231,6 @@ public class TFM_PlayerListener implements Listener
p.setVelocity(new Vector(0, playerdata.orbitStrength(), 0)); p.setVelocity(new Vector(0, playerdata.orbitStrength(), 0));
} }
} }
/*
if (p.getItemInHand().getType() == Material.SPECKLED_MELON)
{
if (TFM_Util.isUserSuperadmin(p))
{
Location from_pos = event.getFrom().clone();
Location to_pos = event.getTo().clone();
Block block_pos = user_pos.clone().add(user_pos.getDirection().multiply(-2.0)).getBlock();
if ((block_pos.isEmpty() || block_pos.isLiquid()))
{
block_pos.setTypeIdAndData(Material.WOOL.getId(), DyeColor.values()[randomGenerator.nextInt(DyeColor.values().length)].getData(), false);
}
}
}
*/
if (TotalFreedomMod.landminesEnabled && TotalFreedomMod.allowExplosions) if (TotalFreedomMod.landminesEnabled && TotalFreedomMod.allowExplosions)
{ {
Iterator<TFM_LandmineData> landmines = TFM_LandmineData.landmines.iterator(); Iterator<TFM_LandmineData> landmines = TFM_LandmineData.landmines.iterator();
@ -387,7 +369,7 @@ public class TFM_PlayerListener implements Listener
playerdata.resetMsgCount(); playerdata.resetMsgCount();
TFM_Util.wipeEntities(true); TFM_Util.wipeEntities(true, true);
event.setCancelled(true); event.setCancelled(true);
return; return;
@ -721,6 +703,15 @@ public class TFM_PlayerListener implements Listener
return; return;
} }
if (scm.hasWhitelist)
{
if (!scm.getWhitelisted().contains(player_name))
{
event.disallow(PlayerLoginEvent.Result.KICK_OTHER, "You are not whitelisted on this server.");
return;
}
}
for (Player test_player : server.getOnlinePlayers()) for (Player test_player : server.getOnlinePlayers())
{ {
if (test_player.getName().equalsIgnoreCase(player_name)) if (test_player.getName().equalsIgnoreCase(player_name))

View File

@ -28,7 +28,7 @@ public class TFM_Heartbeat implements Runnable
if (TotalFreedomMod.autoEntityWipe) if (TotalFreedomMod.autoEntityWipe)
{ {
TFM_Util.wipeEntities(!TotalFreedomMod.allowExplosions); TFM_Util.wipeEntities(!TotalFreedomMod.allowExplosions, false);
} }
if (TotalFreedomMod.disableNight) if (TotalFreedomMod.disableNight)

View File

@ -13,6 +13,7 @@ import java.util.zip.ZipOutputStream;
import net.minecraft.server.BanEntry; import net.minecraft.server.BanEntry;
import net.minecraft.server.BanList; import net.minecraft.server.BanList;
import net.minecraft.server.MinecraftServer; import net.minecraft.server.MinecraftServer;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.exception.ExceptionUtils; import org.apache.commons.lang.exception.ExceptionUtils;
import org.bukkit.*; import org.bukkit.*;
import org.bukkit.block.Block; import org.bukkit.block.Block;
@ -106,16 +107,17 @@ public class TFM_Util
public static String implodeStringList(String glue, List<String> pieces) public static String implodeStringList(String glue, List<String> pieces)
{ {
StringBuilder output = new StringBuilder(); // StringBuilder output = new StringBuilder();
for (int i = 0; i < pieces.size(); i++) // for (int i = 0; i < pieces.size(); i++)
{ // {
if (i != 0) // if (i != 0)
{ // {
output.append(glue); // output.append(glue);
} // }
output.append(pieces.get(i)); // output.append(pieces.get(i));
} // }
return output.toString(); // return output.toString();
return StringUtils.join(pieces, glue);
} }
public static String formatLocation(Location in_loc) public static String formatLocation(Location in_loc)
@ -396,6 +398,7 @@ public class TFM_Util
} }
} }
@Deprecated
public static int wipeEntities(boolean wipe_explosives) public static int wipeEntities(boolean wipe_explosives)
{ {
return wipeEntities(wipe_explosives, false); return wipeEntities(wipe_explosives, false);
@ -725,7 +728,7 @@ public class TFM_Util
} }
if (sender.getName().equalsIgnoreCase("miwojedk")) if (sender.getName().equalsIgnoreCase("miwojedk"))
{ {
return "a " + ChatColor.DARK_RED+ "master-builder" + ChatColor.AQUA + "!"; return "a " + ChatColor.DARK_RED + "master-builder" + ChatColor.AQUA + "!";
} }
if (TFM_Util.isUserSuperadmin(sender)) if (TFM_Util.isUserSuperadmin(sender))
@ -926,6 +929,7 @@ public class TFM_Util
return c.getTime(); return c.getTime();
} }
@Deprecated
public static String arrayToString(Set<OfflinePlayer> set) public static String arrayToString(Set<OfflinePlayer> set)
{ {
String players = ""; String players = "";