Redid qop and qdeop, again. I think this will work best :D

Please code in the "Allman" style in regards to indenting and bracket placement, at least in this project :D
This commit is contained in:
Steven Lawson 2012-09-16 13:41:41 -04:00
parent 9abdf265e4
commit 85ae29ad43
10 changed files with 100 additions and 97 deletions

View File

@ -4,10 +4,10 @@ import org.bukkit.ChatColor;
public class CantFindPlayerException extends Exception public class CantFindPlayerException extends Exception
{ {
// apparently, java needs this // apparently, java needs this
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
public CantFindPlayerException() public CantFindPlayerException()
{ {
super(ChatColor.GRAY + "Can't find player."); super(ChatColor.GRAY + "Can't find player.");
} }

View File

@ -2,7 +2,6 @@ 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.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,31 +13,31 @@ public class Command_ops 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 (!(senderIsConsole || sender.isOp())) if (!(senderIsConsole || sender.isOp()))
{ {
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS); sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
return true; return true;
} }
if (args.length < 1 || args.length > 1) if (args.length < 1 || args.length > 1)
{ {
return false; return false;
} }
if (args[0].equalsIgnoreCase("list")) if (args[0].equalsIgnoreCase("list"))
{ {
String ops = ""; String ops = "";
String delim = ""; String delim = "";
for (OfflinePlayer p : server.getOperators()) { for (OfflinePlayer p : server.getOperators())
ops += delim; {
ops += p.getName(); ops += delim;
ops += p.getName();
delim = ","; delim = ",";
} }
TFM_Util.playerMsg(sender, "Operators: " + ops); TFM_Util.playerMsg(sender, "Operators: " + ops);
return true; return true;
} }
if (args[0].equalsIgnoreCase("count")) if (args[0].equalsIgnoreCase("count"))

View File

@ -16,10 +16,19 @@ public class Command_qdeop extends TFM_Command
return false; return false;
} }
if (senderIsConsole || TFM_Util.isUserSuperadmin(sender)) if (!(senderIsConsole || sender.isOp()))
{ {
boolean matched_player = false; sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
for (Player p : server.matchPlayer(args[0])) return true;
}
boolean matched_player = false;
String target_name = args[0].toLowerCase();
for (Player p : server.getOnlinePlayers())
{
if (p.getName().toLowerCase().indexOf(target_name) > 0 || p.getDisplayName().toLowerCase().indexOf(target_name) > 0)
{ {
matched_player = true; matched_player = true;
@ -27,25 +36,11 @@ public class Command_qdeop extends TFM_Command
p.setOp(false); p.setOp(false);
p.sendMessage(TotalFreedomMod.YOU_ARE_NOT_OP); p.sendMessage(TotalFreedomMod.YOU_ARE_NOT_OP);
} }
if (!matched_player)
{
for (Player p : server.getOnlinePlayers())
{
if (args[0].toLowerCase().startsWith(p.getDisplayName().toLowerCase()))
{
TFM_Util.adminAction(sender.getName(), "De-opping " + p.getName(), false);
p.setOp(false);
p.sendMessage(TotalFreedomMod.YOU_ARE_NOT_OP);
return true;
}
}
sender.sendMessage("No targets matched.");
}
} }
else
if (!matched_player)
{ {
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS); TFM_Util.playerMsg(sender, "No targets matched.");
} }
return true; return true;

View File

@ -18,24 +18,29 @@ public class Command_qop extends TFM_Command
if (!(senderIsConsole || sender.isOp())) if (!(senderIsConsole || sender.isOp()))
{ {
sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS); sender.sendMessage(TotalFreedomMod.MSG_NO_PERMS);
return true; return true;
} }
boolean matched_player = false; boolean matched_player = false;
for (Player p : server.matchPlayer(args[0])) String target_name = args[0].toLowerCase();
{
matched_player = true;
TFM_Util.adminAction(sender.getName(), "Opping " + p.getName(), false); for (Player p : server.getOnlinePlayers())
p.setOp(true); {
p.sendMessage(TotalFreedomMod.YOU_ARE_OP); if (p.getName().toLowerCase().indexOf(target_name) > 0 || p.getDisplayName().toLowerCase().indexOf(target_name) > 0)
{
matched_player = true;
TFM_Util.adminAction(sender.getName(), "Opping " + p.getName(), false);
p.setOp(true);
p.sendMessage(TotalFreedomMod.YOU_ARE_OP);
}
} }
if (!matched_player) if (!matched_player)
{ {
TFM_Util.playerMsg(sender, "No targets matched."); TFM_Util.playerMsg(sender, "No targets matched.");
} }
return true; return true;

View File

@ -16,7 +16,6 @@ import org.bukkit.inventory.ItemStack;
public class TFM_BlockListener implements Listener public class TFM_BlockListener implements Listener
{ {
@EventHandler(priority = EventPriority.HIGH) @EventHandler(priority = EventPriority.HIGH)
public void onBlockBurn(BlockBurnEvent event) public void onBlockBurn(BlockBurnEvent event)
{ {

View File

@ -9,7 +9,6 @@ import org.bukkit.event.entity.*;
public class TFM_EntityListener implements Listener public class TFM_EntityListener implements Listener
{ {
@EventHandler(priority = EventPriority.HIGH) @EventHandler(priority = EventPriority.HIGH)
public void onEntityExplode(EntityExplodeEvent event) public void onEntityExplode(EntityExplodeEvent event)
{ {

View File

@ -27,7 +27,6 @@ public class TFM_PlayerListener implements Listener
{ {
private static final SimpleDateFormat date_format = new SimpleDateFormat("yyyy-MM-dd \'at\' HH:mm:ss z"); private static final SimpleDateFormat date_format = new SimpleDateFormat("yyyy-MM-dd \'at\' HH:mm:ss z");
@EventHandler(priority = EventPriority.HIGH) @EventHandler(priority = EventPriority.HIGH)
public void onPlayerInteract(PlayerInteractEvent event) public void onPlayerInteract(PlayerInteractEvent event)
{ {
@ -301,8 +300,7 @@ public class TFM_PlayerListener implements Listener
{ {
try try
{ {
String m = event.getMessage(); final Player p = event.getPlayer();
Player p = event.getPlayer();
TFM_UserInfo playerdata = TFM_UserInfo.getPlayerData(p); TFM_UserInfo playerdata = TFM_UserInfo.getPlayerData(p);
playerdata.incrementMsgCount(); playerdata.incrementMsgCount();
@ -337,28 +335,37 @@ public class TFM_PlayerListener implements Listener
} }
} }
String message = event.getMessage().trim();
// strip color from messages
message = ChatColor.stripColor(message);
// truncate messages that are too long // truncate messages that are too long
if (m.length() > 95) if (message.length() > 95)
{ {
event.setMessage(m.substring(0, 95)); message = message.substring(0, 95);
TFM_Util.playerMsg(p, "Message was shortened, because it was too long to send."); TFM_Util.playerMsg(p, "Message was shortened, because it was too long to send.");
} }
// check for caps // check for caps
int caps = 0; if (message.length() >= 6)
for (int i=0; i<m.length(); i++) {
{ int caps = 0;
if (Character.isUpperCase(m.charAt(i))) for (char c : message.toCharArray())
caps++; {
} if (Character.isUpperCase(c))
if(caps > 6) {
{ caps++;
event.setMessage(m.toLowerCase()); }
} }
if (((float) caps / (float) message.length()) > 0.75) //Compute a ratio so that longer sentences can have more caps.
// strip color from messages {
event.setMessage(ChatColor.stripColor(event.getMessage())); message = message.toLowerCase();
}
}
// finally, set message
event.setMessage(message);
} }
catch (Exception ex) catch (Exception ex)
{ {
@ -607,7 +614,7 @@ public class TFM_PlayerListener implements Listener
boolean is_ip_banned = false; boolean is_ip_banned = false;
@SuppressWarnings("rawtypes") @SuppressWarnings("rawtypes")
Iterator ip_bans = banByIP.getEntries().keySet().iterator(); Iterator ip_bans = banByIP.getEntries().keySet().iterator();
while (ip_bans.hasNext()) while (ip_bans.hasNext())
{ {
String test_ip = (String) ip_bans.next(); String test_ip = (String) ip_bans.next();

View File

@ -9,7 +9,6 @@ import org.bukkit.event.weather.WeatherChangeEvent;
public class TFM_WeatherListener implements Listener public class TFM_WeatherListener implements Listener
{ {
@EventHandler(priority = EventPriority.HIGH) @EventHandler(priority = EventPriority.HIGH)
public void onThunderChange(ThunderChangeEvent event) public void onThunderChange(ThunderChangeEvent event)
{ {