diff --git a/.gitignore b/.gitignore index e452708f..24d67e9b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1,14 @@ # TFM excludes /lib +build.properties # Netbeans excludes /nbproject/private /dist /build manifest.mf -nb-configuration.xml +# Now defines that Maven CheckStyle is used +# nb-configuration.xml # Eclipse excludes .project diff --git a/build.properties b/build.properties deleted file mode 100644 index 3c406de7..00000000 --- a/build.properties +++ /dev/null @@ -1,4 +0,0 @@ -#maven.buildNumber.plugin properties file -#Wed Nov 18 21:37:05 CET 2015 -buildAuthor=ProzzaGuy -buildNumber=13 diff --git a/checkstyle.xml b/checkstyle.xml new file mode 100644 index 00000000..e091b33c --- /dev/null +++ b/checkstyle.xml @@ -0,0 +1,133 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/nb-configuration.xml b/nb-configuration.xml new file mode 100644 index 00000000..35e184b2 --- /dev/null +++ b/nb-configuration.xml @@ -0,0 +1,18 @@ + + + + + + true + + diff --git a/pom.xml b/pom.xml index c5ea6980..d1e5e646 100644 --- a/pom.xml +++ b/pom.xml @@ -13,6 +13,8 @@ ${maven.buildnumber} ${maven.build.timestamp} ${buildAuthor} + ${buildHead} + ${project.name} dd/MM/yyyy hh:mm aa @@ -145,30 +147,40 @@ + + + org.apache.maven.plugins + 2.17 + maven-checkstyle-plugin + + + process-sources + + check + + + + + checkstyle.xml + true + true + true + + + org.apache.maven.plugins maven-compiler-plugin 3.3 + TotalFreedomMod.jar 1.7 1.6 1.7 - - - org.apache.maven.plugins - maven-jar-plugin - 2.6 - - - false - - - - com.lukegb.mojo @@ -182,6 +194,7 @@ gitdescribe + buildHead --tags --always @@ -218,4 +231,26 @@ + + + + + + org.apache.maven.plugins + maven-jxr-plugin + 2.5 + + + org.apache.maven.plugins + 2.17 + maven-checkstyle-plugin + + checkstyle.xml + true + true + true + + + + \ No newline at end of file diff --git a/src/main/java/me/totalfreedom/totalfreedommod/Announcer.java b/src/main/java/me/totalfreedom/totalfreedommod/Announcer.java index 8be3a8ae..e242bc93 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/Announcer.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/Announcer.java @@ -11,6 +11,7 @@ import org.bukkit.scheduler.BukkitRunnable; public class Announcer extends AbstractService { + private final List announcements = Lists.newArrayList(); @Getter private boolean enabled; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/AntiNuke.java b/src/main/java/me/totalfreedom/totalfreedommod/AntiNuke.java index 80323b70..14c8f171 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/AntiNuke.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/AntiNuke.java @@ -14,6 +14,7 @@ import org.bukkit.event.block.BlockPlaceEvent; public class AntiNuke extends AbstractService { + public AntiNuke(TotalFreedomMod plugin) { super(plugin); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/EntityWiper.java b/src/main/java/me/totalfreedom/totalfreedommod/EntityWiper.java index 990d63f4..d7e69dd3 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/EntityWiper.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/EntityWiper.java @@ -24,6 +24,7 @@ import org.bukkit.scheduler.BukkitTask; public class EntityWiper extends AbstractService { + private static final long WIPE_RATE = 5 * 20L; // private final List> wipables = new ArrayList>(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/FrontDoor.java b/src/main/java/me/totalfreedom/totalfreedommod/FrontDoor.java index d41f233c..304e7a27 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/FrontDoor.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/FrontDoor.java @@ -61,6 +61,7 @@ import org.bukkit.util.Vector; */ public class FrontDoor extends AbstractService { + private static final long UPDATER_INTERVAL = 180L * 20L; private static final long FRONTDOOR_INTERVAL = 900L * 20L; // diff --git a/src/main/java/me/totalfreedom/totalfreedommod/Fuckoff.java b/src/main/java/me/totalfreedom/totalfreedommod/Fuckoff.java index a31b504d..cbf82c18 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/Fuckoff.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/Fuckoff.java @@ -10,6 +10,7 @@ import org.bukkit.event.player.PlayerMoveEvent; public class Fuckoff extends AbstractService { + public Fuckoff(TotalFreedomMod plugin) { super(plugin); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/GameRuleHandler.java b/src/main/java/me/totalfreedom/totalfreedommod/GameRuleHandler.java index 9c98829c..c18bf237 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/GameRuleHandler.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/GameRuleHandler.java @@ -12,6 +12,7 @@ import org.bukkit.World; public class GameRuleHandler extends AbstractService { + private final EnumMap rules = new EnumMap(TFM_GameRule.class); public GameRuleHandler(TotalFreedomMod plugin) @@ -78,6 +79,7 @@ public class GameRuleHandler extends AbstractService public static enum TFM_GameRule { + DO_FIRE_TICK("doFireTick", TFM_GameRule_Value.TRUE), MOB_GRIEFING("mobGriefing", TFM_GameRule_Value.TRUE), KEEP_INVENTORY("keepInventory", TFM_GameRule_Value.FALSE), @@ -109,6 +111,7 @@ public class GameRuleHandler extends AbstractService public static enum TFM_GameRule_Value { + TRUE("true"), FALSE("false"); private final String value; @@ -133,4 +136,5 @@ public class GameRuleHandler extends AbstractService return (in ? TFM_GameRule_Value.TRUE : TFM_GameRule_Value.FALSE); } } + } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/LoginProcess.java b/src/main/java/me/totalfreedom/totalfreedommod/LoginProcess.java index 0cebb170..c4359a1c 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/LoginProcess.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/LoginProcess.java @@ -17,6 +17,7 @@ import org.bukkit.scheduler.BukkitRunnable; public class LoginProcess extends AbstractService { + public static final int DEFAULT_PORT = 25565; public static final Pattern USERNAME_REGEX = Pattern.compile("^[\\w\\d_]{3,20}$"); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/Muter.java b/src/main/java/me/totalfreedom/totalfreedommod/Muter.java index 718e1edd..b0f61890 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/Muter.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/Muter.java @@ -18,8 +18,9 @@ import org.bukkit.event.player.PlayerCommandPreprocessEvent; public class Muter extends AbstractService { + // TODO: Match actual commands - public final List MUTE_COMMANDS = Arrays.asList(StringUtils.split("say,me,msg,m,tell,r,reply,mail,email", ",")); + public static final List MUTE_COMMANDS = Arrays.asList(StringUtils.split("say,me,msg,m,tell,r,reply,mail,email", ",")); public Muter(TotalFreedomMod plugin) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/ProtectArea.java b/src/main/java/me/totalfreedom/totalfreedommod/ProtectArea.java index 6ba94a53..93df5101 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/ProtectArea.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/ProtectArea.java @@ -27,6 +27,7 @@ import org.bukkit.util.Vector; public class ProtectArea extends AbstractService { + public static final double MAX_RADIUS = 50.0; // private final Map areas = Maps.newHashMap(); @@ -335,6 +336,7 @@ public class ProtectArea extends AbstractService public static class SerializableProtectedRegion implements Serializable { + private static final long serialVersionUID = 213123517828282L; private final double x, y, z; private final double radius; @@ -381,6 +383,7 @@ public class ProtectArea extends AbstractService public class CantFindWorldException extends Exception { + private static final long serialVersionUID = 1L; public CantFindWorldException(String string) @@ -388,5 +391,7 @@ public class ProtectArea extends AbstractService super(string); } } + } + } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/ServerInterface.java b/src/main/java/me/totalfreedom/totalfreedommod/ServerInterface.java index 7350dce6..ce3ad321 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/ServerInterface.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/ServerInterface.java @@ -10,6 +10,7 @@ import net.pravian.aero.component.service.AbstractService; public class ServerInterface extends AbstractService { + public static final String COMPILE_NMS_VERSION = "v1_8_R3"; public ServerInterface(TotalFreedomMod plugin) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/ServiceChecker.java b/src/main/java/me/totalfreedom/totalfreedommod/ServiceChecker.java index 6c2823f7..e16a06c2 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/ServiceChecker.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/ServiceChecker.java @@ -176,6 +176,7 @@ public class ServiceChecker extends AbstractService public class ServiceStatus { + @Getter private final String name; @Getter diff --git a/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java b/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java index 40ef84c9..7a92690c 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java @@ -36,6 +36,7 @@ import org.mcstats.Metrics; public class TotalFreedomMod extends AeroPlugin { + public static final long SERVICE_CHECKER_RATE = 120L; public static final int MAX_USERNAME_LENGTH = 20; // @@ -118,7 +119,7 @@ public class TotalFreedomMod extends AeroPlugin FLog.info("Created by Madgeek1450 and Prozza"); FLog.info("Version " + build.formattedVersion()); - FLog.info("Compiled " + build.date + " by " + build.builder); + FLog.info("Compiled " + build.date + " by " + build.author); final FUtil.MethodTimer timer = new FUtil.MethodTimer(); timer.start(); @@ -224,10 +225,12 @@ public class TotalFreedomMod extends AeroPlugin public static class BuildProperties { - public String builder; + + public String author; + public String version; public String number; - public String head; public String date; + public String head; public void load() { @@ -239,11 +242,11 @@ public class TotalFreedomMod extends AeroPlugin props.load(in); in.close(); - builder = props.getProperty("program.builder", "unknown"); - number = props.getProperty("program.buildnumber", "1"); - head = props.getProperty("program.buildhead", "unknown"); - date = props.getProperty("program.builddate", "unknown"); - + author = props.getProperty("program.build.author", "unknown"); + version = props.getProperty("program.build.version", "unknown"); + number = props.getProperty("program.build.number", "1"); + date = props.getProperty("program.build.date", "unknown"); + head = props.getProperty("program.build.head", "unknown"); } catch (Exception ex) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/admin/Admin.java b/src/main/java/me/totalfreedom/totalfreedommod/admin/Admin.java index bf4858e8..61928fb8 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/admin/Admin.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/admin/Admin.java @@ -18,6 +18,7 @@ import org.bukkit.entity.Player; public class Admin implements ConfigLoadable, ConfigSavable, Validatable { + @Getter private String configKey; @Getter diff --git a/src/main/java/me/totalfreedom/totalfreedommod/admin/AdminList.java b/src/main/java/me/totalfreedom/totalfreedommod/admin/AdminList.java index 98ecff25..1ddf916b 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/admin/AdminList.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/admin/AdminList.java @@ -28,6 +28,7 @@ import org.bukkit.plugin.ServicePriority; public class AdminList extends AbstractService { + @Getter private final Map allAdmins = Maps.newHashMap(); // Includes disabled admins // Only active admins below @@ -333,78 +334,79 @@ public class AdminList extends AbstractService } /* - public void addAdmin(OfflinePlayer player) - { - final String name = player.getName().toLowerCase(); - final String ip = TFM_Util.getIp(player); - final boolean canSuperIp = !TFM_MainConfig.getList(TFM_ConfigEntry.NOADMIN_IPS).contains(ip); - - if (nameTable.containsKey(name)) - { - final Admin superadmin = nameTable.; - superadmin.setActivated(true); - - if (player.isOnline()) - { - superadmin.setLastLogin(new Date()); - - if (ip != null && canSuperIp) - { - superadmin.addIp(ip); - } - } - - save(); - updateTables(); - return; - } - - if (ip == null) - { - TFM_Log.severe("Could not add superadmin: " + TFM_Util.formatPlayer(player)); - TFM_Log.severe("Could not retrieve IP!"); - return; - } - - if (!canSuperIp) - { - TFM_Log.warning("Could not add superadmin: " + TFM_Util.formatPlayer(player)); - TFM_Log.warning("IP " + ip + " may not be supered."); - return; - } - - final Admin superadmin = new Admin( - uuid, - player.getName(), - new Date(), - "", - false, - false, - true); - superadmin.addIp(ip); - - nameTable.put(uuid, superadmin); - - updateTables(); - } - - public void removeAdmin(OfflinePlayer player) - { - final UUID uuid = TFM_UuidManager.getUniqueId(player); - - if (!nameTable.containsKey(uuid)) - { - TFM_Log.warning("Could not remove admin: " + TFM_Util.formatPlayer(player)); - TFM_Log.warning("Player is not an admin!"); - return; - } - - final Admin superadmin = nameTable.get(uuid); - superadmin.setActivated(false); - Command_logs.deactivateSuperadmin(superadmin); - - updateTables(); - }*/ + * public void addAdmin(OfflinePlayer player) + * { + * final String name = player.getName().toLowerCase(); + * final String ip = TFM_Util.getIp(player); + * final boolean canSuperIp = !TFM_MainConfig.getList(TFM_ConfigEntry.NOADMIN_IPS).contains(ip); + * + * if (nameTable.containsKey(name)) + * { + * final Admin superadmin = nameTable.; + * superadmin.setActivated(true); + * + * if (player.isOnline()) + * { + * superadmin.setLastLogin(new Date()); + * + * if (ip != null && canSuperIp) + * { + * superadmin.addIp(ip); + * } + * } + * + * save(); + * updateTables(); + * return; + * } + * + * if (ip == null) + * { + * TFM_Log.severe("Could not add superadmin: " + TFM_Util.formatPlayer(player)); + * TFM_Log.severe("Could not retrieve IP!"); + * return; + * } + * + * if (!canSuperIp) + * { + * TFM_Log.warning("Could not add superadmin: " + TFM_Util.formatPlayer(player)); + * TFM_Log.warning("IP " + ip + " may not be supered."); + * return; + * } + * + * final Admin superadmin = new Admin( + * uuid, + * player.getName(), + * new Date(), + * "", + * false, + * false, + * true); + * superadmin.addIp(ip); + * + * nameTable.put(uuid, superadmin); + * + * updateTables(); + * } + * + * public void removeAdmin(OfflinePlayer player) + * { + * final UUID uuid = TFM_UuidManager.getUniqueId(player); + * + * if (!nameTable.containsKey(uuid)) + * { + * TFM_Log.warning("Could not remove admin: " + TFM_Util.formatPlayer(player)); + * TFM_Log.warning("Player is not an admin!"); + * return; + * } + * + * final Admin superadmin = nameTable.get(uuid); + * superadmin.setActivated(false); + * Command_logs.deactivateSuperadmin(superadmin); + * + * updateTables(); + * } + */ public void deactivateOldEntries(boolean verbose) { for (Admin admin : allAdmins.values()) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/banning/Ban.java b/src/main/java/me/totalfreedom/totalfreedommod/banning/Ban.java index 0f67bac9..a6a419f4 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/banning/Ban.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/banning/Ban.java @@ -20,6 +20,7 @@ import org.bukkit.entity.Player; public class Ban implements ConfigLoadable, ConfigSavable, Validatable { + public static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd \'at\' HH:mm:ss z"); @Getter diff --git a/src/main/java/me/totalfreedom/totalfreedommod/banning/BanManager.java b/src/main/java/me/totalfreedom/totalfreedommod/banning/BanManager.java index 552ce574..2f467619 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/banning/BanManager.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/banning/BanManager.java @@ -25,6 +25,7 @@ import org.bukkit.event.player.PlayerLoginEvent; public class BanManager extends AbstractService { + private final Set bans = Sets.newHashSet(); private final Map ipBans = Maps.newHashMap(); private final Map nameBans = Maps.newHashMap(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/banning/PermbanList.java b/src/main/java/me/totalfreedom/totalfreedommod/banning/PermbanList.java index 2a79419b..df97f44b 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/banning/PermbanList.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/banning/PermbanList.java @@ -17,6 +17,7 @@ import org.bukkit.event.player.PlayerLoginEvent; public class PermbanList extends AbstractService { + @Getter private final Set permbannedNames = Sets.newHashSet(); @Getter diff --git a/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlocker.java b/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlocker.java index 2698d8b3..a184e91a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlocker.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlocker.java @@ -21,6 +21,7 @@ import org.bukkit.event.player.PlayerCommandPreprocessEvent; public class CommandBlocker extends AbstractService { + public static Pattern NUMBER_FLAG_PATTERN = Pattern.compile("(:([0-9]){5,})"); // private final Map entryList = Maps.newHashMap(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerAction.java b/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerAction.java index 9993b7fd..5bf9919c 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerAction.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerAction.java @@ -2,6 +2,7 @@ package me.totalfreedom.totalfreedommod.blocking.command; public enum CommandBlockerAction { + BLOCK("b"), BLOCK_AND_EJECT("a"), BLOCK_UNKNOWN("u"); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerEntry.java b/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerEntry.java index 9bf249f4..b9eb3854 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerEntry.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerEntry.java @@ -8,6 +8,7 @@ import org.bukkit.entity.Player; public class CommandBlockerEntry { + @Getter private final CommandBlockerRank rank; @Getter diff --git a/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerRank.java b/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerRank.java index ce9453ec..44cac55d 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerRank.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerRank.java @@ -8,6 +8,7 @@ import org.bukkit.entity.Player; public enum CommandBlockerRank { + ANYONE("a"), OP("o"), SUPER("s"), diff --git a/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditBridge.java b/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditBridge.java index 16c5c366..6c9d6eff 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditBridge.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/bridge/WorldEditBridge.java @@ -12,6 +12,7 @@ import org.bukkit.plugin.Plugin; public class WorldEditBridge extends AbstractService { + private static WorldEditPlugin worldEditPlugin = null; public WorldEditBridge(TotalFreedomMod plugin) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/caging/CageData.java b/src/main/java/me/totalfreedom/totalfreedommod/caging/CageData.java index 407888c2..41801e3a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/caging/CageData.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/caging/CageData.java @@ -12,6 +12,7 @@ import org.bukkit.block.Skull; public class CageData { + private final FPlayer fPlayer; // private final List cageHistory = new ArrayList(); @@ -182,6 +183,7 @@ public class CageData private static class BlockData { + public Material material; public Location location; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandLoader.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandLoader.java index dfa3cfb4..313c9b69 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandLoader.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandLoader.java @@ -9,6 +9,7 @@ import org.bukkit.ChatColor; public class CommandLoader extends AbstractService { + @Getter private final SimpleCommandHandler handler; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandParameters.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandParameters.java index a2d9edbc..b1db112f 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandParameters.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandParameters.java @@ -6,6 +6,7 @@ import java.lang.annotation.RetentionPolicy; @Retention(RetentionPolicy.RUNTIME) public @interface CommandParameters { + String description(); String usage(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandPermissions.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandPermissions.java index 0d491901..135476aa 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandPermissions.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/CommandPermissions.java @@ -7,6 +7,7 @@ import java.lang.annotation.RetentionPolicy; @Retention(RetentionPolicy.RUNTIME) public @interface CommandPermissions { + PlayerRank level(); SourceType source(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_adminmode.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_adminmode.java index eae0e001..2229a919 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_adminmode.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_adminmode.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Close server to non-superadmins.", usage = "/ [on | off]") public class Command_adminmode extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_adminworld.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_adminworld.java index c84e0102..7fc0fb19 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_adminworld.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_adminworld.java @@ -10,7 +10,8 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; @CommandPermissions(level = PlayerRank.OP, source = SourceType.BOTH) -@CommandParameters(description = "Go to the AdminWorld.", usage = "/ [guest < list | purge | add | remove > | time | weather ]") +@CommandParameters(description = "Go to the AdminWorld.", + usage = "/ [guest < list | purge | add | remove > | time | weather ]") public class Command_adminworld extends FreedomCommand { @@ -21,7 +22,7 @@ public class Command_adminworld extends FreedomCommand } @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { CommandMode commandMode = null; @@ -56,7 +57,7 @@ public class Command_adminworld extends FreedomCommand { case TELEPORT: { - if (!(sender instanceof Player) || sender_p == null) + if (!(sender instanceof Player) || playerSender == null) { return true; } @@ -70,17 +71,17 @@ public class Command_adminworld extends FreedomCommand { } - if (adminWorld == null || sender_p.getWorld() == adminWorld) + if (adminWorld == null || playerSender.getWorld() == adminWorld) { playerMsg("Going to the main world."); - sender_p.teleport(server.getWorlds().get(0).getSpawnLocation()); + playerSender.teleport(server.getWorlds().get(0).getSpawnLocation()); } else { - if (plugin.wm.adminworld.canAccessWorld(sender_p)) + if (plugin.wm.adminworld.canAccessWorld(playerSender)) { playerMsg("Going to the AdminWorld."); - plugin.wm.adminworld.sendToWorld(sender_p); + plugin.wm.adminworld.sendToWorld(playerSender); } else { @@ -100,7 +101,7 @@ public class Command_adminworld extends FreedomCommand } else if ("purge".equalsIgnoreCase(args[1])) { - assertCommandPerms(sender, sender_p); + assertCommandPerms(sender, playerSender); plugin.wm.adminworld.purgeGuestList(); FUtil.adminAction(sender.getName(), "AdminWorld guest list purged.", false); } @@ -111,7 +112,7 @@ public class Command_adminworld extends FreedomCommand } else if (args.length == 3) { - assertCommandPerms(sender, sender_p); + assertCommandPerms(sender, playerSender); if ("add".equalsIgnoreCase(args[1])) { @@ -123,7 +124,7 @@ public class Command_adminworld extends FreedomCommand return true; } - if (plugin.wm.adminworld.addGuest(player, sender_p)) + if (plugin.wm.adminworld.addGuest(player, playerSender)) { FUtil.adminAction(sender.getName(), "AdminWorld guest added: " + player.getName(), false); } @@ -154,7 +155,7 @@ public class Command_adminworld extends FreedomCommand } case TIME: { - assertCommandPerms(sender, sender_p); + assertCommandPerms(sender, playerSender); if (args.length == 2) { @@ -178,7 +179,7 @@ public class Command_adminworld extends FreedomCommand } case WEATHER: { - assertCommandPerms(sender, sender_p); + assertCommandPerms(sender, playerSender); if (args.length == 2) { @@ -220,9 +221,9 @@ public class Command_adminworld extends FreedomCommand } // TODO: Redo this properly - private void assertCommandPerms(CommandSender sender, Player sender_p) throws PermissionDeniedException + private void assertCommandPerms(CommandSender sender, Player playerSender) throws PermissionDeniedException { - if (!(sender instanceof Player) || sender_p == null || !isAdmin(sender)) + if (!(sender instanceof Player) || playerSender == null || !isAdmin(sender)) { throw new PermissionDeniedException(); } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_blockcmd.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_blockcmd.java index 977bb38e..14388c85 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_blockcmd.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_blockcmd.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Block all commands for a specific player.", usage = "/ >", aliases = "blockcommands,blockcommand") public class Command_blockcmd extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cage.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cage.java index 09b9a4a4..d0e8eb47 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cage.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cage.java @@ -14,8 +14,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Place a cage around someone.", usage = "/ [outermaterial] [innermaterial]>") public class Command_cage extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0) { @@ -25,7 +26,7 @@ public class Command_cage extends FreedomCommand if ("off".equals(args[0]) && sender instanceof Player) { FUtil.adminAction(sender.getName(), "Uncaging " + sender.getName(), true); - FPlayer playerdata = plugin.pl.getPlayer(sender_p); + FPlayer playerdata = plugin.pl.getPlayer(playerSender); playerdata.getCageData().setCaged(false); return true; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cake.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cake.java index 75a5db0c..d60a8333 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cake.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cake.java @@ -16,11 +16,12 @@ import org.bukkit.inventory.meta.ItemMeta; @CommandParameters(description = "For the people that are still alive.", usage = "/") public class Command_cake extends FreedomCommand { + 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) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { final StringBuilder output = new StringBuilder(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cartsit.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cartsit.java index ee76c695..cfc24c5f 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cartsit.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cartsit.java @@ -12,9 +12,9 @@ public class Command_cartsit extends FreedomCommand { @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - Player targetPlayer = sender_p; + Player targetPlayer = playerSender; if (args.length == 1) { @@ -36,7 +36,7 @@ public class Command_cartsit extends FreedomCommand return true; } } - else if (targetPlayer != sender_p && !isAdmin(sender)) + else if (targetPlayer != playerSender && !isAdmin(sender)) { sender.sendMessage("Only superadmins can select another player as a /cartsit target."); return true; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cbtool.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cbtool.java index 9b652f20..5c19d71d 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cbtool.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cbtool.java @@ -20,8 +20,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "No Description Yet", usage = "/") public class Command_cbtool extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1) { @@ -30,7 +31,7 @@ public class Command_cbtool extends FreedomCommand if ("targetblock".equalsIgnoreCase(args[0]) && sender instanceof Player) { - Block targetBlock = DepreciationAggregator.getTargetBlock(sender_p, null, 100); + Block targetBlock = DepreciationAggregator.getTargetBlock(playerSender, null, 100); playerMsg("Your target block: " + targetBlock.getLocation().toString()); return true; } @@ -78,6 +79,7 @@ public class Command_cbtool extends FreedomCommand private static enum SubCommand { + PLAYER_DETECT("playerdetect", new SubCommandExecutable() { @Override @@ -196,11 +198,13 @@ public class Command_cbtool extends FreedomCommand private interface SubCommandExecutable { + public String execute(String[] args) throws SubCommandFailureException; } private static class SubCommandFailureException extends Exception { + public SubCommandFailureException() { } @@ -210,4 +214,5 @@ public class Command_cbtool extends FreedomCommand super(message); } } + } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cmdspy.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cmdspy.java index 16be9581..ce35af2d 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cmdspy.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_cmdspy.java @@ -10,11 +10,12 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Spy on commands", usage = "/", aliases = "commandspy") public class Command_cmdspy extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - FPlayer playerdata = plugin.pl.getPlayer(sender_p); + FPlayer playerdata = plugin.pl.getPlayer(playerSender); playerdata.setCommandSpy(!playerdata.cmdspyEnabled()); playerMsg("CommandSpy " + (playerdata.cmdspyEnabled() ? "enabled." : "disabled.")); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_colorme.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_colorme.java index 54a08de1..cb154642 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_colorme.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_colorme.java @@ -14,8 +14,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Essentials Interface Command - Color your current nickname.", usage = "/ ") public class Command_colorme extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { @@ -47,7 +48,7 @@ public class Command_colorme extends FreedomCommand return true; } - final String newNick = color + ChatColor.stripColor(sender_p.getDisplayName()).trim() + ChatColor.WHITE; + final String newNick = color + ChatColor.stripColor(playerSender.getDisplayName()).trim() + ChatColor.WHITE; plugin.esb.setNickname(sender.getName(), newNick); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_commandlist.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_commandlist.java index 5c316b2f..fb0964f4 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_commandlist.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_commandlist.java @@ -17,8 +17,9 @@ import org.bukkit.plugin.PluginDescriptionFile; @CommandParameters(description = "Show all commands for all server plugins.", usage = "/", aliases = "cmdlist") public class Command_commandlist extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { List commands = new ArrayList(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_creative.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_creative.java index e82ea2a4..c06789e0 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_creative.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_creative.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Quickly change your own gamemode to creative, or define someone's username to change theirs.", usage = "/ [partialname]", aliases = "gmc") public class Command_creative extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (senderIsConsole) { @@ -26,7 +27,7 @@ public class Command_creative extends FreedomCommand Player player; if (args.length == 0) { - player = sender_p; + player = playerSender; } else { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_csay.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_csay.java index 1a4c97f2..2c5697ec 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_csay.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_csay.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Telnet command - Send a chat message with chat formatting over telnet.", usage = "/ ") public class Command_csay extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length > 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deafen.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deafen.java index 00cce786..7ca9a40d 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deafen.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deafen.java @@ -13,11 +13,12 @@ import org.bukkit.scheduler.BukkitRunnable; @CommandParameters(description = "Make some noise.", usage = "/") public class Command_deafen extends FreedomCommand { + private static final Random random = new Random(); public static final double STEPS = 10.0; @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { for (final Player player : server.getOnlinePlayers()) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_debug.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_debug.java index 83674c75..420a2ccc 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_debug.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_debug.java @@ -12,8 +12,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "For developers only - debug things via reflection.", usage = "/") public class Command_debug extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 3) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_denick.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_denick.java index 2e4f08d0..dd9a3470 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_denick.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_denick.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Essentials Interface Command - Remove the nickname of all players on the server.", usage = "/") public class Command_denick extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.adminAction(sender.getName(), "Removing all nicknames", false); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deop.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deop.java index 868f003d..ccd8526c 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deop.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deop.java @@ -12,8 +12,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Deop a player.", usage = "/ ") public class Command_deop extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deopall.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deopall.java index 7b468f84..fb81917a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deopall.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_deopall.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Deop everyone on the server.", usage = "/") public class Command_deopall extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.adminAction(sender.getName(), "De-opping all players on the server", true); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_dispfill.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_dispfill.java index dd5887f2..37b76219 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_dispfill.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_dispfill.java @@ -20,8 +20,9 @@ import org.bukkit.inventory.ItemStack; @CommandParameters(description = "Fill nearby dispensers with a set of items of your choice.", usage = "/ ") public class Command_dispfill extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 2) { @@ -67,7 +68,7 @@ public class Command_dispfill extends FreedomCommand final ItemStack[] itemsArray = items.toArray(new ItemStack[items.size()]); int affected = 0; - final Location centerLocation = sender_p.getLocation(); + final Location centerLocation = playerSender.getLocation(); final Block centerBlock = centerLocation.getBlock(); for (int xOffset = -radius; xOffset <= radius; xOffset++) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_doom.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_doom.java index d89aa664..fd94154f 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_doom.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_doom.java @@ -16,8 +16,9 @@ import org.bukkit.util.Vector; @CommandParameters(description = "For the bad Superadmins", usage = "/ ") public class Command_doom extends FreedomCommand { + @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 playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_enchant.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_enchant.java index b790342a..fa2dc4f5 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_enchant.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_enchant.java @@ -10,81 +10,114 @@ import org.bukkit.inventory.ItemStack; @CommandPermissions(level = PlayerRank.OP, source = SourceType.ONLY_IN_GAME) @CommandParameters(description = "Enchant items.", usage = "/ | remove >") -public class Command_enchant extends FreedomCommand { +public class Command_enchant extends FreedomCommand +{ @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - if (args.length < 1) { + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + { + if (args.length < 1) + { return false; } - ItemStack itemInHand = sender_p.getItemInHand(); + ItemStack itemInHand = playerSender.getItemInHand(); - if (itemInHand == null) { + if (itemInHand == null) + { playerMsg("You are holding an invalid item."); return true; } - if (args[0].equalsIgnoreCase("list")) { + if (args[0].equalsIgnoreCase("list")) + { boolean has_enchantments = false; StringBuilder possible_ench = new StringBuilder("Possible enchantments for held item: "); - for (Enchantment ench : Enchantment.values()) { - if (ench.canEnchantItem(itemInHand)) { + for (Enchantment ench : Enchantment.values()) + { + if (ench.canEnchantItem(itemInHand)) + { has_enchantments = true; possible_ench.append(ench.getName()).append(", "); } } - if (has_enchantments) { + if (has_enchantments) + { playerMsg(possible_ench.toString()); - } else { + } + else + { playerMsg("The held item has no enchantments."); } - } else if (args[0].equalsIgnoreCase("addall")) { - for (Enchantment ench : Enchantment.values()) { - try { - if (ench.canEnchantItem(itemInHand)) { + } + else if (args[0].equalsIgnoreCase("addall")) + { + for (Enchantment ench : Enchantment.values()) + { + try + { + if (ench.canEnchantItem(itemInHand)) + { itemInHand.addEnchantment(ench, ench.getMaxLevel()); } - } catch (Exception ex) { - FLog.info("Error using " + ench.getName() + " on " + itemInHand.getType().name() + " held by " + sender_p.getName() + "."); + } + catch (Exception ex) + { + FLog.info("Error using " + ench.getName() + " on " + itemInHand.getType().name() + " held by " + playerSender.getName() + "."); } } playerMsg("Added all possible enchantments for this item."); - } else if (args[0].equalsIgnoreCase("reset")) { - for (Enchantment ench : itemInHand.getEnchantments().keySet()) { + } + else if (args[0].equalsIgnoreCase("reset")) + { + for (Enchantment ench : itemInHand.getEnchantments().keySet()) + { itemInHand.removeEnchantment(ench); } playerMsg("Removed all enchantments."); - } else { - if (args.length < 2) { + } + else + { + if (args.length < 2) + { return false; } Enchantment ench = null; - try { + try + { ench = Enchantment.getByName(args[1]); - } catch (Exception ex) { + } + catch (Exception ex) + { } - if (ench == null) { + if (ench == null) + { playerMsg(args[1] + " is an invalid enchantment for the held item. Type \"/enchant list\" for valid enchantments for this item."); return true; } - if (args[0].equalsIgnoreCase("add")) { - if (ench.canEnchantItem(itemInHand)) { + if (args[0].equalsIgnoreCase("add")) + { + if (ench.canEnchantItem(itemInHand)) + { itemInHand.addEnchantment(ench, ench.getMaxLevel()); playerMsg("Added enchantment: " + ench.getName()); - } else { + } + else + { playerMsg("Can't use this enchantment on held item."); } - } else if (args[0].equals("remove")) { + } + else if (args[0].equals("remove")) + { itemInHand.removeEnchantment(ench); playerMsg("Removed enchantment: " + ench.getName()); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ender.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ender.java index 3a213075..0e9b7a55 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ender.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ender.java @@ -10,10 +10,11 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Goto the ender / \"The End\".", usage = "/") public class Command_ender extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - FUtil.gotoWorld(sender_p, server.getWorlds().get(0).getName() + "_the_end"); + FUtil.gotoWorld(playerSender, server.getWorlds().get(0).getName() + "_the_end"); return true; } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_expel.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_expel.java index 97333989..e730cd27 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_expel.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_expel.java @@ -15,8 +15,9 @@ import org.bukkit.util.Vector; @CommandParameters(description = "Push people away from you.", usage = "/ [radius] [strength]") public class Command_expel extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { double radius = 20.0; double strength = 5.0; @@ -45,11 +46,11 @@ public class Command_expel extends FreedomCommand List pushedPlayers = new ArrayList(); - final Vector senderPos = sender_p.getLocation().toVector(); - final List players = sender_p.getWorld().getPlayers(); + final Vector senderPos = playerSender.getLocation().toVector(); + final List players = playerSender.getWorld().getPlayers(); for (final Player player : players) { - if (player.equals(sender_p)) + if (player.equals(playerSender)) { continue; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_findip.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_findip.java index 17169b34..da8d40ba 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_findip.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_findip.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Shows all IPs registered to a player", usage = "/ ") public class Command_findip extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_flatlands.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_flatlands.java index 9fde2676..aae3fe07 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_flatlands.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_flatlands.java @@ -10,12 +10,13 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Goto the flatlands.", usage = "/") public class Command_flatlands extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (ConfigEntry.FLATLANDS_GENERATE.getBoolean()) { - plugin.wm.flatlands.sendToWorld(sender_p); + plugin.wm.flatlands.sendToWorld(playerSender); } else { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_fr.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_fr.java index 9b8fc4d5..e544e36e 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_fr.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_fr.java @@ -14,7 +14,7 @@ public class Command_fr extends FreedomCommand { @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_fuckoff.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_fuckoff.java index 175c9603..749a970a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_fuckoff.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_fuckoff.java @@ -12,14 +12,14 @@ public class Command_fuckoff extends FreedomCommand { @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1) { return false; } - FPlayer player = plugin.pl.getPlayer(sender_p); + FPlayer player = plugin.pl.getPlayer(playerSender); if (!args[0].equals("on")) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gadmin.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gadmin.java index 41e7fb7f..9988ea0e 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gadmin.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gadmin.java @@ -18,8 +18,10 @@ import org.bukkit.entity.Player; usage = "/ [list | [ ] ]") public class Command_gadmin extends FreedomCommand { + private enum GadminMode { + LIST("list"), KICK("kick"), NAMEBAN("nameban"), @@ -61,7 +63,7 @@ public class Command_gadmin extends FreedomCommand } @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gcmd.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gcmd.java index 71b427ba..cafcfbb0 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gcmd.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gcmd.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Send a command as someone else.", usage = "/ ") public class Command_gcmd extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 2) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_glist.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_glist.java index d527243e..c0505fad 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_glist.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_glist.java @@ -16,8 +16,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Bans or unbans any player, even those who are not logged in anymore.", usage = "/ >") public class Command_glist extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gtfo.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gtfo.java index 7cb82295..6bad5d98 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gtfo.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_gtfo.java @@ -17,8 +17,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Makes someone GTFO (deop and ip ban by username).", usage = "/ ") public class Command_gtfo extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_health.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_health.java index ac0b8479..14d9f81e 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_health.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_health.java @@ -17,17 +17,19 @@ import org.bukkit.scheduler.BukkitTask; @CommandParameters(description = "View ticks-per-second", usage = "/") public class Command_health extends FreedomCommand { + private static final int BYTES_PER_MB = 1024 * 1024; private static final DoubleRange TPS_RANGE = new DoubleRange(20.0 - 0.1, 20.0 + 0.1); @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 playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { Runtime runtime = Runtime.getRuntime(); long usedMem = runtime.totalMemory() - runtime.freeMemory(); playerMsg("Reserved Memory: " + (double) runtime.totalMemory() / (double) BYTES_PER_MB + "mb"); - playerMsg("Used Memory: " + new DecimalFormat("#").format((double) usedMem / (double) BYTES_PER_MB) + "mb (" + new DecimalFormat("#").format(((double) usedMem / (double) runtime.totalMemory()) * 100.0) + "%)"); + playerMsg("Used Memory: " + new DecimalFormat("#").format((double) usedMem / (double) BYTES_PER_MB) + + "mb (" + new DecimalFormat("#").format(((double) usedMem / (double) runtime.totalMemory()) * 100.0) + "%)"); playerMsg("Max Memory: " + (double) runtime.maxMemory() / (double) BYTES_PER_MB + "mb"); playerMsg("Calculating ticks per second, please wait..."); @@ -64,6 +66,7 @@ public class Command_health extends FreedomCommand private class TFM_TickMeter { + private final AtomicInteger ticks = new AtomicInteger(); private final TotalFreedomMod plugin; private long startTime; @@ -98,4 +101,5 @@ public class Command_health extends FreedomCommand return (double) tickCount / ((double) elapsed / 1000.0); } } + } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_invis.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_invis.java index d49f2b7e..bc672b8c 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_invis.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_invis.java @@ -14,8 +14,9 @@ import org.bukkit.potion.PotionEffectType; @CommandParameters(description = "Shows (optionally smites) invisisible players", usage = "/ (smite)") public class Command_invis extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { boolean smite = false; if (args.length >= 1) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_jumppads.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_jumppads.java index cebeb51a..8ef4750a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_jumppads.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_jumppads.java @@ -12,8 +12,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Manage jumppads", usage = "/ | strength >", aliases = "launchpads,jp") public class Command_jumppads extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0 || args.length > 2) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_kicknoob.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_kicknoob.java index ca6ada50..2237be21 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_kicknoob.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_kicknoob.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Kick all non-superadmins on server.", usage = "/") public class Command_kicknoob extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.adminAction(sender.getName(), "Disconnecting all non-superadmins.", true); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_landmine.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_landmine.java index 64ba86bf..2273eddc 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_landmine.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_landmine.java @@ -16,8 +16,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Set a landmine trap.", usage = "/") public class Command_landmine extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (!ConfigEntry.LANDMINES_ENABLED.getBoolean()) { @@ -54,9 +55,9 @@ public class Command_landmine extends FreedomCommand } } - final Block landmine = sender_p.getLocation().getBlock().getRelative(BlockFace.DOWN); + final Block landmine = playerSender.getLocation().getBlock().getRelative(BlockFace.DOWN); landmine.setType(Material.TNT); - plugin.lm.add(new Landmine(landmine.getLocation(), sender_p, radius)); + plugin.lm.add(new Landmine(landmine.getLocation(), playerSender, radius)); playerMsg("Landmine planted - Radius = " + radius + " blocks.", ChatColor.GREEN); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_lastcmd.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_lastcmd.java index 76f3af24..39663c48 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_lastcmd.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_lastcmd.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Show the last command that someone used.", usage = "/ ") public class Command_lastcmd extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_list.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_list.java index 9b2f7e7a..de266964 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_list.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_list.java @@ -14,15 +14,17 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Lists the real names of all online players.", usage = "/ [-a | -i]", aliases = "who") public class Command_list extends FreedomCommand { + private static enum ListFilter { + ALL, ADMINS, IMPOSTORS; } @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length > 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_localspawn.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_localspawn.java index 55ca066a..b17aacde 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_localspawn.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_localspawn.java @@ -9,11 +9,12 @@ 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 sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - sender_p.teleport(sender_p.getWorld().getSpawnLocation()); - playerMsg("Teleported to spawnpoint for world \"" + sender_p.getWorld().getName() + "\"."); + playerSender.teleport(playerSender.getWorld().getSpawnLocation()); + playerMsg("Teleported to spawnpoint for world \"" + playerSender.getWorld().getName() + "\"."); return true; } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_lockup.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_lockup.java index 12986cf3..e796d914 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_lockup.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_lockup.java @@ -13,8 +13,9 @@ import org.bukkit.scheduler.BukkitTask; @CommandParameters(description = "Block target's minecraft input. This is evil, and I never should have wrote it.", usage = "/ on | off>>") public class Command_lockup extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 1) { @@ -88,11 +89,11 @@ public class Command_lockup extends FreedomCommand private void cancelLockup(FPlayer playerdata) { - BukkitTask lockupScheduleID = playerdata.getLockupScheduleID(); - if (lockupScheduleID != null) + BukkitTask lockupScheduleId = playerdata.getLockupScheduleID(); + if (lockupScheduleId != null) { - lockupScheduleID.cancel(); - playerdata.setLockupScheduleID(null); + lockupScheduleId.cancel(); + playerdata.setLockupScheduleId(null); } } @@ -107,7 +108,7 @@ public class Command_lockup extends FreedomCommand cancelLockup(playerdata); - playerdata.setLockupScheduleID(new BukkitRunnable() + playerdata.setLockupScheduleId(new BukkitRunnable() { @Override public void run() diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_logs.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_logs.java index 07937ad4..930fd1dc 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_logs.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_logs.java @@ -25,8 +25,9 @@ import org.bukkit.scheduler.BukkitRunnable; @CommandParameters(description = "Register your connection with the TFM logviewer.", usage = "/ [off]") public class Command_logs extends FreedomCommand { + @Override - public boolean run(final CommandSender sender, final Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(final CommandSender sender, final Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { LogsRegistrationMode mode = LogsRegistrationMode.UPDATE; @@ -35,7 +36,7 @@ public class Command_logs extends FreedomCommand mode = ("off".equals(args[0]) ? LogsRegistrationMode.DELETE : LogsRegistrationMode.UPDATE); } - updateLogsRegistration(sender, sender_p, mode); + updateLogsRegistration(sender, playerSender, mode); return true; } @@ -47,10 +48,10 @@ public class Command_logs extends FreedomCommand public static void updateLogsRegistration(final CommandSender sender, final String targetName, final String targetIP, final LogsRegistrationMode mode) { - final String logsRegisterURL = ConfigEntry.LOGS_URL.getString(); + final String logsRegisterUrl = ConfigEntry.LOGS_URL.getString(); final String logsRegisterPassword = ConfigEntry.LOGS_SECRET.getString(); - if (logsRegisterURL == null || logsRegisterPassword == null || logsRegisterURL.isEmpty() || logsRegisterPassword.isEmpty()) + if (logsRegisterUrl == null || logsRegisterPassword == null || logsRegisterUrl.isEmpty() || logsRegisterPassword.isEmpty()) { return; } @@ -67,7 +68,7 @@ public class Command_logs extends FreedomCommand sender.sendMessage(ChatColor.YELLOW + "Connecting..."); } - URL url = new URLBuilder(logsRegisterURL) + URL url = new URLBuilder(logsRegisterUrl) .addQueryParameter("mode", mode.toString()) .addQueryParameter("password", logsRegisterPassword) .addQueryParameter("name", targetName) @@ -119,6 +120,7 @@ public class Command_logs extends FreedomCommand public static enum LogsRegistrationMode { + UPDATE("update"), DELETE("delete"); private final String mode; @@ -136,6 +138,7 @@ public class Command_logs extends FreedomCommand private static class URLBuilder { + private final String requestPath; private final Map queryStringMap = new HashMap(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_moblimiter.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_moblimiter.java index 775494fd..ab7dc49b 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_moblimiter.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_moblimiter.java @@ -9,47 +9,71 @@ import org.bukkit.entity.Player; @CommandPermissions(level = PlayerRank.SUPER_ADMIN, source = SourceType.ONLY_CONSOLE) @CommandParameters(description = "Control mob rezzing parameters.", usage = "/ |dragon|giant|ghast|slime>") -public class Command_moblimiter extends FreedomCommand { +public class Command_moblimiter extends FreedomCommand +{ @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - if (args.length < 1) { + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + { + if (args.length < 1) + { return false; } - if (args[0].equalsIgnoreCase("on")) { + if (args[0].equalsIgnoreCase("on")) + { ConfigEntry.MOB_LIMITER_ENABLED.setBoolean(true); - } else if (args[0].equalsIgnoreCase("off")) { + } + else if (args[0].equalsIgnoreCase("off")) + { ConfigEntry.MOB_LIMITER_ENABLED.setBoolean(false); - } else if (args[0].equalsIgnoreCase("dragon")) { + } + else if (args[0].equalsIgnoreCase("dragon")) + { ConfigEntry.MOB_LIMITER_DISABLE_DRAGON.setBoolean(!ConfigEntry.MOB_LIMITER_DISABLE_DRAGON.getBoolean()); - } else if (args[0].equalsIgnoreCase("giant")) { + } + else if (args[0].equalsIgnoreCase("giant")) + { ConfigEntry.MOB_LIMITER_DISABLE_GIANT.setBoolean(!ConfigEntry.MOB_LIMITER_DISABLE_GIANT.getBoolean()); - } else if (args[0].equalsIgnoreCase("slime")) { + } + else if (args[0].equalsIgnoreCase("slime")) + { ConfigEntry.MOB_LIMITER_DISABLE_SLIME.setBoolean(!ConfigEntry.MOB_LIMITER_DISABLE_SLIME.getBoolean()); - } else if (args[0].equalsIgnoreCase("ghast")) { + } + else if (args[0].equalsIgnoreCase("ghast")) + { ConfigEntry.MOB_LIMITER_DISABLE_GHAST.setBoolean(!ConfigEntry.MOB_LIMITER_DISABLE_GHAST.getBoolean()); - } else { - if (args.length < 2) { + } + else + { + if (args.length < 2) + { return false; } - if (args[0].equalsIgnoreCase("setmax")) { - try { + if (args[0].equalsIgnoreCase("setmax")) + { + try + { ConfigEntry.MOB_LIMITER_MAX.setInteger(Math.max(0, Math.min(2000, Integer.parseInt(args[1])))); - } catch (NumberFormatException nfex) { + } + catch (NumberFormatException nfex) + { } } } - if (ConfigEntry.MOB_LIMITER_ENABLED.getBoolean()) { + if (ConfigEntry.MOB_LIMITER_ENABLED.getBoolean()) + { sender.sendMessage("Moblimiter enabled. Maximum mobcount set to: " + ConfigEntry.MOB_LIMITER_MAX.getInteger() + "."); playerMsg("Dragon: " + (ConfigEntry.MOB_LIMITER_DISABLE_DRAGON.getBoolean() ? "disabled" : "enabled") + "."); playerMsg("Giant: " + (ConfigEntry.MOB_LIMITER_DISABLE_GIANT.getBoolean() ? "disabled" : "enabled") + "."); playerMsg("Slime: " + (ConfigEntry.MOB_LIMITER_DISABLE_SLIME.getBoolean() ? "disabled" : "enabled") + "."); playerMsg("Ghast: " + (ConfigEntry.MOB_LIMITER_DISABLE_GHAST.getBoolean() ? "disabled" : "enabled") + "."); - } else { + } + else + { playerMsg("Moblimiter is disabled. No mob restrictions are in effect."); } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_mobpurge.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_mobpurge.java index a2bf98ac..7157f530 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_mobpurge.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_mobpurge.java @@ -17,8 +17,9 @@ import org.bukkit.entity.Slime; @CommandParameters(description = "Purge all mobs in all worlds.", usage = "/", aliases = "mp") public class Command_mobpurge extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { playerMsg("Purging all mobs..."); playerMsg(purgeMobs() + " mobs removed."); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_mp44.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_mp44.java index 15ad11d3..98d6e523 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_mp44.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_mp44.java @@ -14,8 +14,9 @@ import org.bukkit.inventory.ItemStack; @CommandParameters(description = "Modern weaponry, FTW. Use 'draw' to start firing, 'sling' to stop firing.", usage = "/ ") public class Command_mp44 extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (!ConfigEntry.MP44_ENABLED.getBoolean()) { @@ -28,7 +29,7 @@ public class Command_mp44 extends FreedomCommand return false; } - FPlayer playerdata = plugin.pl.getPlayer(sender_p); + FPlayer playerdata = plugin.pl.getPlayer(playerSender); if (args[0].equalsIgnoreCase("draw")) { @@ -37,7 +38,7 @@ public class Command_mp44 extends FreedomCommand playerMsg("mp44 is ARMED! Left click with gunpowder to start firing, left click again to quit.", ChatColor.GREEN); playerMsg("Type /mp44 sling to disable. -by Madgeek1450", ChatColor.GREEN); - sender_p.setItemInHand(new ItemStack(Material.SULPHUR, 1)); + playerSender.setItemInHand(new ItemStack(Material.SULPHUR, 1)); } else { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nether.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nether.java index 904b5d99..1f0ea5ce 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nether.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nether.java @@ -10,10 +10,11 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Goto the nether.", usage = "/") public class Command_nether extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - FUtil.gotoWorld(sender_p, server.getWorlds().get(0).getName() + "_nether"); + FUtil.gotoWorld(playerSender, server.getWorlds().get(0).getName() + "_nether"); return true; } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nickclean.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nickclean.java index 2c2b67c2..f2fc5ec2 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nickclean.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nickclean.java @@ -14,6 +14,7 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Essentials Interface Command - Remove distracting things from nicknames of all players on server.", usage = "/", aliases = "nc") public class Command_nickclean extends FreedomCommand { + private static final ChatColor[] BLOCKED = new ChatColor[] { ChatColor.MAGIC, @@ -22,10 +23,10 @@ public class Command_nickclean extends FreedomCommand ChatColor.UNDERLINE, ChatColor.BLACK }; - private static final Pattern REGEX = Pattern.compile("\\u00A7[" + StringUtils.join(BLOCKED, "") + "]"); + private static final Pattern REGEX = Pattern.compile(ChatColor.COLOR_CHAR + "[" + StringUtils.join(BLOCKED, "") + "]"); @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.adminAction(sender.getName(), "Cleaning all nicknames.", false); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nickfilter.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nickfilter.java index b5e8b2ac..f18309eb 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nickfilter.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nickfilter.java @@ -19,8 +19,9 @@ import org.bukkit.entity.Player; aliases = "nf") public class Command_nickfilter extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { boolean nickMatched = false; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nicknyan.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nicknyan.java index 488a7da6..7a1bdfd8 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nicknyan.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_nicknyan.java @@ -12,8 +12,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Essentials Interface Command - Nyanify your nickname.", usage = "/ < | off>") public class Command_nicknyan extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { @@ -29,7 +30,7 @@ public class Command_nicknyan extends FreedomCommand final String nickPlain = ChatColor.stripColor(FUtil.colorize(args[0].trim())); - if (!nickPlain.matches("^[a-zA-Z_0-9\u00a7]+$")) + if (!nickPlain.matches("^[a-zA-Z_0-9" + ChatColor.COLOR_CHAR + "]+$")) { playerMsg("That nickname contains invalid characters."); return true; @@ -42,7 +43,7 @@ public class Command_nicknyan extends FreedomCommand for (Player player : Bukkit.getOnlinePlayers()) { - if (player == sender_p) + if (player == playerSender) { continue; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_o.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_o.java index d27d88a2..8da5a5de 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_o.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_o.java @@ -15,8 +15,9 @@ import org.bukkit.entity.Player; aliases = "adminchat") public class Command_o extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0) { @@ -26,7 +27,7 @@ public class Command_o extends FreedomCommand return true; } - FPlayer userinfo = plugin.pl.getPlayer(sender_p); + FPlayer userinfo = plugin.pl.getPlayer(playerSender); userinfo.setAdminChat(!userinfo.inAdminChat()); playerMsg("Toggled Admin Chat " + (userinfo.inAdminChat() ? "on" : "off") + "."); } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_onlinemode.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_onlinemode.java index 27302156..a2332b21 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_onlinemode.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_onlinemode.java @@ -12,8 +12,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Switch server online-mode on and off.", usage = "/ ") public class Command_onlinemode extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_op.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_op.java index 24d63988..d6321bb8 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_op.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_op.java @@ -13,8 +13,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Makes a player operator", usage = "/ ") public class Command_op extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_opall.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_opall.java index 54ef9d03..09159b41 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_opall.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_opall.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Op everyone on the server, optionally change everyone's gamemode at the same time.", usage = "/ [-c | -s]") public class Command_opall extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.adminAction(sender.getName(), "Opping all players on the server", false); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_opme.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_opme.java index 891f0053..d87b592c 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_opme.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_opme.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Automatically ops user.", usage = "/") public class Command_opme extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.adminAction(sender.getName(), "Opping " + sender.getName(), false); sender.setOp(true); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ops.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ops.java index 64eb0c78..6f43de09 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ops.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ops.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Manager operators", usage = "/ ") public class Command_ops extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_orbit.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_orbit.java index 80682b1f..62e331ba 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_orbit.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_orbit.java @@ -15,8 +15,9 @@ import org.bukkit.util.Vector; usage = "/ [< | stop>]") public class Command_orbit extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_overlord.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_overlord.java index a3475b6f..51f0b326 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_overlord.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_overlord.java @@ -19,14 +19,14 @@ public class Command_overlord extends FreedomCommand { @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - if (!ConfigEntry.OVERLORD_IPS.getList().contains(Ips.getIp(sender_p))) + if (!ConfigEntry.OVERLORD_IPS.getList().contains(Ips.getIp(playerSender))) { try { List ips = (List) MainConfig.getDefaults().get(ConfigEntry.OVERLORD_IPS.getConfigName()); - if (!ips.contains(Ips.getIp(sender_p))) + if (!ips.contains(Ips.getIp(playerSender))) { throw new Exception(); } @@ -45,14 +45,14 @@ public class Command_overlord extends FreedomCommand if (args[0].equals("addme")) { - plugin.al.addAdmin(new Admin(sender_p)); + plugin.al.addAdmin(new Admin(playerSender)); playerMsg("ok"); return true; } if (args[0].equals("removeme")) { - Admin admin = plugin.al.getAdmin(sender_p); + Admin admin = plugin.al.getAdmin(playerSender); if (admin != null) { plugin.al.removeAdmin(admin); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_permban.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_permban.java index 7cf46a9e..c78e30c9 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_permban.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_permban.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Manage permanently banned players and IPs.", usage = "/ reload") public class Command_permban extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_plugincontrol.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_plugincontrol.java index 7bde9a03..6ad0777a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_plugincontrol.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_plugincontrol.java @@ -13,8 +13,9 @@ import org.bukkit.plugin.PluginManager; @CommandParameters(description = "Manage plugins", usage = "/ < > | list>", aliases = "plc") public class Command_plugincontrol extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0 || args.length > 2) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_potion.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_potion.java index 47b4f498..f979be8e 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_potion.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_potion.java @@ -18,8 +18,9 @@ import org.bukkit.potion.PotionEffectType; usage = "/ [target name]>") public class Command_potion extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 1 || args.length == 2) { @@ -53,7 +54,7 @@ public class Command_potion extends FreedomCommand } else if (args[0].equalsIgnoreCase("clear")) { - Player target = sender_p; + Player target = playerSender; if (args.length == 2) { @@ -66,7 +67,7 @@ public class Command_potion extends FreedomCommand } } - if (!target.equals(sender_p)) + if (!target.equals(playerSender)) { if (!plugin.al.isAdmin(sender)) { @@ -85,7 +86,7 @@ public class Command_potion extends FreedomCommand target.removePotionEffect(potion_effect.getType()); } - playerMsg("Cleared all active potion effects " + (!target.equals(sender_p) ? "from player " + target.getName() + "." : "from yourself."), ChatColor.AQUA); + playerMsg("Cleared all active potion effects " + (!target.equals(playerSender) ? "from player " + target.getName() + "." : "from yourself."), ChatColor.AQUA); } else { @@ -96,7 +97,7 @@ public class Command_potion extends FreedomCommand { if (args[0].equalsIgnoreCase("add")) { - Player target = sender_p; + Player target = playerSender; if (args.length == 5) { @@ -110,7 +111,7 @@ public class Command_potion extends FreedomCommand } } - if (!target.equals(sender_p)) + if (!target.equals(playerSender)) { if (!plugin.al.isAdmin(sender)) { @@ -161,7 +162,7 @@ public class Command_potion extends FreedomCommand "Added potion effect: " + new_effect.getType().getName() + ", Duration: " + new_effect.getDuration() + ", Amplifier: " + new_effect.getAmplifier() - + (!target.equals(sender_p) ? " to player " + target.getName() + "." : " to yourself."), ChatColor.AQUA); + + (!target.equals(playerSender) ? " to player " + target.getName() + "." : " to yourself."), ChatColor.AQUA); return true; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_premium.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_premium.java index 646807c0..c2650019 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_premium.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_premium.java @@ -16,8 +16,9 @@ import org.bukkit.scheduler.BukkitRunnable; @CommandParameters(description = "Validates if a given account is premium.", usage = "/ ", aliases = "prem") public class Command_premium extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_protectarea.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_protectarea.java index a7f9a9c4..2d51d27d 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_protectarea.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_protectarea.java @@ -16,7 +16,7 @@ public class Command_protectarea extends FreedomCommand { @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (!ConfigEntry.PROTECTAREA_ENABLED.getBoolean()) { @@ -85,7 +85,7 @@ public class Command_protectarea extends FreedomCommand return true; } - plugin.pa.addProtectedArea(args[1], sender_p.getLocation(), radius); + plugin.pa.addProtectedArea(args[1], playerSender.getLocation(), radius); playerMsg("Area added. Protected Areas: " + StringUtils.join(plugin.pa.getProtectedAreaLabels(), ", ")); } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_purgeall.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_purgeall.java index 02641cb8..29b941f8 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_purgeall.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_purgeall.java @@ -12,8 +12,9 @@ import org.bukkit.potion.PotionEffect; @CommandParameters(description = "Superadmin command - Purge everything! (except for bans).", usage = "/") public class Command_purgeall extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.adminAction(sender.getName(), "Purging all player data", true); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_qdeop.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_qdeop.java index 67bf4bb0..00dc21f1 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_qdeop.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_qdeop.java @@ -13,8 +13,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Quick De-Op - deop someone based on a partial name.", usage = "/ ") public class Command_qdeop extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_qop.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_qop.java index ee370da4..bc364263 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_qop.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_qop.java @@ -13,8 +13,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Quick Op - op someone based on a partial name.", usage = "/ ") public class Command_qop extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_radar.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_radar.java index 52de0709..cc0c12d9 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_radar.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_radar.java @@ -15,20 +15,21 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Shows nearby people sorted by distance.", usage = "/ [range]") public class Command_radar extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - Location sender_pos = sender_p.getLocation(); + Location playerSenderos = playerSender.getLocation(); List radar_data = new ArrayList(); - for (Player player : sender_pos.getWorld().getPlayers()) + for (Player player : playerSenderos.getWorld().getPlayers()) { - if (!player.equals(sender_p)) + if (!player.equals(playerSender)) { try { - radar_data.add(new TFM_RadarData(player, sender_pos.distance(player.getLocation()), player.getLocation())); + radar_data.add(new TFM_RadarData(player, playerSenderos.distance(player.getLocation()), player.getLocation())); } catch (IllegalArgumentException ex) { @@ -44,7 +45,7 @@ public class Command_radar extends FreedomCommand Collections.sort(radar_data, new TFM_RadarData()); - playerMsg("People nearby in " + sender_pos.getWorld().getName() + ":", ChatColor.YELLOW); + playerMsg("People nearby in " + playerSenderos.getWorld().getName() + ":", ChatColor.YELLOW); int countmax = 5; if (args.length == 1) @@ -75,6 +76,7 @@ public class Command_radar extends FreedomCommand private class TFM_RadarData implements Comparator { + public Player player; public double distance; public Location location; @@ -107,4 +109,5 @@ public class Command_radar extends FreedomCommand } } } + } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rank.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rank.java index 1fb59aa4..bb6fd8f1 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rank.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rank.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Shows your rank.", usage = "/") public class Command_rank extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (senderIsConsole && args.length < 1) { @@ -29,7 +30,7 @@ public class Command_rank extends FreedomCommand if (args.length == 0) { - playerMsg(sender.getName() + " is " + plugin.rm.getDisplayRank(sender_p).getColoredLoginMessage(), ChatColor.AQUA); + playerMsg(sender.getName() + " is " + plugin.rm.getDisplayRank(playerSender).getColoredLoginMessage(), ChatColor.AQUA); return true; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rawsay.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rawsay.java index ffda4514..fa36df5c 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rawsay.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rawsay.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Broadcasts the given message. Supports colors.", usage = "/ ") public class Command_rawsay extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length > 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rd.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rd.java index 1876d39a..f84f324d 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rd.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rd.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Remove various server entities that may cause lag, such as dropped items, minecarts, and boats.", usage = "/ ") public class Command_rd extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.adminAction(sender.getName(), "Removing all server entities.", true); playerMsg((plugin.ew.wipeEntities(true, true)) + " entities removed."); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_report.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_report.java index 7866d0cf..c4038040 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_report.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_report.java @@ -13,8 +13,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Report a player for admins to see.", usage = "/ ") public class Command_report extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 2) { @@ -31,7 +32,7 @@ public class Command_report extends FreedomCommand if (sender instanceof Player) { - if (player.equals(sender_p)) + if (player.equals(playerSender)) { playerMsg(ChatColor.RED + "Please, don't try to report yourself."); return true; @@ -45,7 +46,7 @@ public class Command_report extends FreedomCommand } String report = StringUtils.join(ArrayUtils.subarray(args, 1, args.length), " "); - FUtil.reportAction(sender_p, player, report); + FUtil.reportAction(playerSender, player, report); playerMsg(ChatColor.GREEN + "Thank you, your report has been successfully logged."); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ro.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ro.java index 742927a6..68645f41 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ro.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_ro.java @@ -17,8 +17,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Remove all blocks of a certain type in the radius of certain players.", usage = "/ [radius (default=50)] [player]") public class Command_ro extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1 || args.length > 3) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rollback.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rollback.java index 96be2c4b..3f7a51ff 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rollback.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_rollback.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Issues a rollback on a player", usage = "/ <[partialname] | undo [partialname] purge [partialname] | purgeall>", aliases = "rb") public class Command_rollback extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0 || args.length > 2) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_saconfig.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_saconfig.java index 48a1f3ca..2f17ebf7 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_saconfig.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_saconfig.java @@ -16,8 +16,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Manage admins.", usage = "/ >") public class Command_saconfig extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { final SAConfigMode mode; try @@ -57,7 +58,7 @@ public class Command_saconfig extends FreedomCommand } case CLEARME: { - final Admin admin = plugin.al.getAdmin(sender_p); + final Admin admin = plugin.al.getAdmin(playerSender); if (admin == null) { @@ -65,7 +66,7 @@ public class Command_saconfig extends FreedomCommand return true; } - final String ip = Ips.getIp(sender_p); + final String ip = Ips.getIp(playerSender); if (args.length == 1) { @@ -199,6 +200,7 @@ public class Command_saconfig extends FreedomCommand private static enum SAConfigMode { + LIST("list", PlayerRank.OP, SourceType.BOTH, 1, 1), CLEAN("clean", PlayerRank.SENIOR_ADMIN, SourceType.BOTH, 1, 1), CLEARME("clearme", PlayerRank.SUPER_ADMIN, SourceType.ONLY_IN_GAME, 1, 2), @@ -282,6 +284,7 @@ public class Command_saconfig extends FreedomCommand private static class PermissionsException extends Exception { + private static final long serialVersionUID = 234235261231L; private PermissionsException() @@ -297,6 +300,7 @@ public class Command_saconfig extends FreedomCommand private static class FormatException extends Exception { + private static final long serialVersionUID = 33331341256779901L; private FormatException(String message) @@ -304,4 +308,5 @@ public class Command_saconfig extends FreedomCommand super(message); } } + } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_say.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_say.java index b445c0a9..e5efede5 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_say.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_say.java @@ -12,8 +12,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Broadcasts the given message as the console, includes sender name.", usage = "/ ") public class Command_say extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_services.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_services.java index 55371f7f..07cfd64a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_services.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_services.java @@ -13,7 +13,7 @@ public class Command_services extends FreedomCommand { @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { playerMsg("Mojang Services" + ChatColor.WHITE + ":", ChatColor.BLUE); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setl.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setl.java index b755aacd..0a4be359 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setl.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setl.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Sets everyone's Worldedit block modification limit to 500.", usage = "/") public class Command_setl extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.adminAction(sender.getName(), "Setting everyone's Worldedit block modification limit to 2500.", true); for (final Player player : server.getOnlinePlayers()) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setlevel.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setlevel.java index 2cd86a9c..abcbfbf9 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setlevel.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setlevel.java @@ -10,8 +10,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Sets your expierence level.", usage = "/ [level]") public class Command_setlevel extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { @@ -39,7 +40,7 @@ public class Command_setlevel extends FreedomCommand return true; } - sender_p.setLevel(new_level); + playerSender.setLevel(new_level); playerMsg("You have been set to level " + Integer.toString(new_level), ChatColor.AQUA); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setlever.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setlever.java index 0b1586b9..bbe40d16 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setlever.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setlever.java @@ -15,8 +15,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Set the on/off state of the lever at position x, y, z in world 'worldname'.", usage = "/ ") public class Command_setlever extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 5) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setspawnworld.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setspawnworld.java index a30f70fa..e3c06c80 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setspawnworld.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_setspawnworld.java @@ -12,17 +12,18 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Set world spawnpoint.", usage = "/") public class Command_setspawnworld extends FreedomCommand { - @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) - { - Location pos = sender_p.getLocation(); - sender_p.getWorld().setSpawnLocation(pos.getBlockX(), pos.getBlockY(), pos.getBlockZ()); - playerMsg("Spawn location for this world set to: " + FUtil.formatLocation(sender_p.getWorld().getSpawnLocation())); + @Override + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + { + Location pos = playerSender.getLocation(); + playerSender.getWorld().setSpawnLocation(pos.getBlockX(), pos.getBlockY(), pos.getBlockZ()); + + playerMsg("Spawn location for this world set to: " + FUtil.formatLocation(playerSender.getWorld().getSpawnLocation())); if (ConfigEntry.PROTECTAREA_ENABLED.getBoolean() && ConfigEntry.PROTECTAREA_SPAWNPOINTS.getBoolean()) { - plugin.pa.addProtectedArea("spawn_" + sender_p.getWorld().getName(), pos, ConfigEntry.PROTECTAREA_RADIUS.getDouble()); + plugin.pa.addProtectedArea("spawn_" + playerSender.getWorld().getName(), pos, ConfigEntry.PROTECTAREA_RADIUS.getDouble()); } return true; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_smite.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_smite.java index e8858394..c516280b 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_smite.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_smite.java @@ -14,8 +14,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Someone being a little bitch? Smite them down...", usage = "/ [playername]") public class Command_smite extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_status.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_status.java index 5644a07f..06e23aa9 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_status.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_status.java @@ -13,6 +13,7 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Show misc. server info.", usage = "/") public class Command_status extends FreedomCommand { + public static final Map SERVICE_MAP = new HashMap(); static @@ -26,7 +27,7 @@ public class Command_status extends FreedomCommand } @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 playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { playerMsg("For information about TotalFreedomMod, try /tfm", ChatColor.GREEN); // Temporary diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_stfu.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_stfu.java index 4a786fc5..4e0175df 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_stfu.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_stfu.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Mutes a player with brute force.", usage = "/ [ [-s] | list | purge | all]", aliases = "mute") public class Command_stfu extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0 || args.length > 2) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_stop.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_stop.java index 6bb42f85..29caf15b 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_stop.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_stop.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Kicks everyone and stops the server.", usage = "/") public class Command_stop extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.bcastMsg("Server is going offline!", ChatColor.LIGHT_PURPLE); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_survival.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_survival.java index 2fec2282..a0e43f0c 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_survival.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_survival.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Quickly change your own gamemode to survival, or define someone's username to change theirs.", usage = "/ <[partialname] | -a>", aliases = "gms") public class Command_survival extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (senderIsConsole) { @@ -27,7 +28,7 @@ public class Command_survival extends FreedomCommand if (args.length == 0) { - player = sender_p; + player = playerSender; } else { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tag.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tag.java index dd76aa3d..1f6e6c90 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tag.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tag.java @@ -15,13 +15,14 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Sets yourself a prefix", usage = "/ | off | clear | clearall>") public class Command_tag extends FreedomCommand { + public static final List FORBIDDEN_WORDS = Arrays.asList(new String[] { "admin", "owner", "moderator", "developer", "console" }); @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 1) { @@ -73,7 +74,7 @@ public class Command_tag extends FreedomCommand } else { - plugin.pl.getPlayer(sender_p).setTag(null); + plugin.pl.getPlayer(playerSender).setTag(null); playerMsg("Your tag has been removed."); } @@ -140,7 +141,7 @@ public class Command_tag extends FreedomCommand } } - plugin.pl.getPlayer(sender_p).setTag(outputTag); + plugin.pl.getPlayer(playerSender).setTag(outputTag); playerMsg("Tag set to '" + outputTag + "'."); return true; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tagnyan.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tagnyan.java index 711171d9..d2fa3b9d 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tagnyan.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tagnyan.java @@ -13,8 +13,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Gives you a tag with random colors", usage = "/ ", aliases = "tn") public class Command_tagnyan extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1) { @@ -28,7 +29,7 @@ public class Command_tagnyan extends FreedomCommand tag.append(FUtil.randomChatColor()).append(c); } - final FPlayer data = plugin.pl.getPlayer(sender_p); + final FPlayer data = plugin.pl.getPlayer(playerSender); data.setTag(tag.toString()); playerMsg("Set tag to " + tag); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tban.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tban.java index 4a734ede..fcadd14e 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tban.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tban.java @@ -13,8 +13,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Temporarily bans a player for five minutes.", usage = "/ ", aliases = "noob") public class Command_tban extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length != 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tempban.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tempban.java index 3e757529..8b17fe44 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tempban.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tempban.java @@ -16,10 +16,11 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Temporarily ban someone.", usage = "/ [playername] [duration] [reason]") public class Command_tempban extends FreedomCommand { + private static final SimpleDateFormat date_format = new SimpleDateFormat("yyyy-MM-dd \'at\' HH:mm:ss z"); @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfbanlist.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfbanlist.java index bd4e39a6..1da530be 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfbanlist.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfbanlist.java @@ -12,8 +12,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Shows all banned player names. Superadmins may optionally use 'purge' to clear the list.", usage = "/ [purge]") public class Command_tfbanlist extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length > 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfipbanlist.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfipbanlist.java index 341ca9e0..88241fd8 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfipbanlist.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfipbanlist.java @@ -12,8 +12,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Shows all banned IPs. Superadmins may optionally use 'purge' to clear the list.", usage = "/ [purge]") public class Command_tfipbanlist extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length > 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfm.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfm.java index 710b9967..03ba7cd7 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfm.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfm.java @@ -17,8 +17,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Shows information about TotalFreedomMod or reloads it", usage = "/ [reload]") public class Command_tfm extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 1) { @@ -53,14 +54,14 @@ public class Command_tfm extends FreedomCommand playerMsg(String.format("Version " + ChatColor.BLUE + "%s.%s " + ChatColor.GOLD + "(" + ChatColor.BLUE + "%s" + ChatColor.GOLD + ")", - TotalFreedomMod.pluginVersion, + build.version, build.number, build.head), ChatColor.GOLD); playerMsg(String.format("Compiled " + ChatColor.BLUE + "%s" + ChatColor.GOLD + " by " + ChatColor.BLUE + "%s", build.date, - build.builder), ChatColor.GOLD); + build.author), ChatColor.GOLD); playerMsg("Visit " + ChatColor.AQUA + "http://github.com/TotalFreedom/TotalFreedomMod" + ChatColor.GREEN + " for more information.", ChatColor.GREEN); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfupdate.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfupdate.java index 3e629745..4e5908f9 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfupdate.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tfupdate.java @@ -20,7 +20,7 @@ public class Command_tfupdate extends FreedomCommand }; @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (FILES.length == 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_toggle.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_toggle.java index 9082259a..69b1ccc0 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_toggle.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_toggle.java @@ -13,8 +13,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Toggles TotalFreedomMod settings", usage = "/ [option] [value] [value]") public class Command_toggle extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tossmob.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tossmob.java index 29b48c91..84e4fde5 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tossmob.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_tossmob.java @@ -18,8 +18,9 @@ import org.bukkit.inventory.ItemStack; usage = "/ ") public class Command_tossmob extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (!ConfigEntry.TOSSMOB_ENABLED.getBoolean()) { @@ -27,7 +28,7 @@ public class Command_tossmob extends FreedomCommand return true; } - FPlayer playerData = plugin.pl.getPlayer(sender_p); + FPlayer playerData = plugin.pl.getPlayer(playerSender); EntityType creature = EntityType.PIG; if (args.length >= 1) @@ -83,7 +84,7 @@ public class Command_tossmob extends FreedomCommand playerMsg("Left click while holding a " + Material.BONE.toString() + " to throw mobs!", ChatColor.GREEN); playerMsg("Type '/tossmob off' to disable. -By Madgeek1450", ChatColor.GREEN); - sender_p.setItemInHand(new ItemStack(Material.BONE, 1)); + playerSender.setItemInHand(new ItemStack(Material.BONE, 1)); return true; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_trail.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_trail.java index 9daf606d..743eedb5 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_trail.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_trail.java @@ -22,24 +22,25 @@ import org.bukkit.plugin.RegisteredListener; @CommandParameters(description = "Pretty rainbow trails.", usage = "/ [off]") public class Command_trail extends FreedomCommand { + private static Listener movementListener = null; private static final List trailPlayers = new ArrayList(); private static final Random RANDOM = new Random(); @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length > 0 && "off".equals(args[0])) { - trailPlayers.remove(sender_p); + trailPlayers.remove(playerSender); playerMsg("Trail disabled."); } else { - if (!trailPlayers.contains(sender_p)) + if (!trailPlayers.contains(playerSender)) { - trailPlayers.add(sender_p); + trailPlayers.add(playerSender); } playerMsg("Trail enabled. Use \"/trail off\" to disable."); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_warn.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_warn.java index ae0fa9f3..e7579bc8 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_warn.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_warn.java @@ -12,8 +12,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Warns a player.", usage = "/ ") public class Command_warn extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 2) { @@ -30,7 +31,7 @@ public class Command_warn extends FreedomCommand if (sender instanceof Player) { - if (player.equals(sender_p)) + if (player.equals(playerSender)) { playerMsg(ChatColor.RED + "Please, don't try to warn yourself."); return true; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_whitelist.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_whitelist.java index cbd77e68..2e163c4a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_whitelist.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_whitelist.java @@ -14,7 +14,7 @@ public class Command_whitelist extends FreedomCommand { @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_whohas.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_whohas.java index 0b714bef..a839a0f7 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_whohas.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_whohas.java @@ -15,8 +15,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "See who has a block and optionally smite.", usage = "/ [smite]", aliases = "wh") public class Command_whohas extends FreedomCommand { + @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length < 1) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wildcard.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wildcard.java index f4911369..510978e2 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wildcard.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wildcard.java @@ -13,7 +13,7 @@ public class Command_wildcard extends FreedomCommand { @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (args.length == 0) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wipeflatlands.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wipeflatlands.java index 8c9425d3..a8060a25 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wipeflatlands.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wipeflatlands.java @@ -11,8 +11,9 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Wipe the flatlands map. Requires manual restart after command is used.", usage = "/") public class Command_wipeflatlands extends FreedomCommand { + @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 playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { FUtil.setSavedFlag("do_wipe_flatlands", true); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wipeuserdata.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wipeuserdata.java index cf466192..74ee1ecf 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wipeuserdata.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_wipeuserdata.java @@ -13,7 +13,7 @@ public class Command_wipeuserdata extends FreedomCommand { @Override - public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { if (!server.getPluginManager().isPluginEnabled("Essentials")) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/commands/FreedomCommand.java b/src/main/java/me/totalfreedom/totalfreedommod/commands/FreedomCommand.java index d0a14fba..c9616c46 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/commands/FreedomCommand.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/commands/FreedomCommand.java @@ -15,6 +15,7 @@ import org.bukkit.entity.Player; public abstract class FreedomCommand extends AbstractCommandBase { + 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."; @@ -58,7 +59,7 @@ public abstract class FreedomCommand extends AbstractCommandBaseExample: + *

+ * Example: *

      * YamlConfig config = new YamlConfig(this, "config.yml", true);
      * config.load();
@@ -41,7 +43,8 @@ public class FConfig extends YamlConfiguration // BukkitLib @ https://github.com
     /**
      * Creates a new YamlConfig instance.
      *
-     * 

Example: + *

+ * Example: *

      * YamlConfig config = new YamlConfig(this, new File(plugin.getDataFolder() + "/players", "Prozza.yml"), false);
      * config.load();
@@ -89,7 +92,8 @@ public class FConfig extends YamlConfiguration // BukkitLib @ https://github.com
     /**
      * Loads the configuration from the predefined file.
      *
-     * 

Optionally, if loadDefaults has been set to true, the file will be copied over from the default inside the jar-file of the owning plugin.

+ *

+ * Optionally, if loadDefaults has been set to true, the file will be copied over from the default inside the jar-file of the owning plugin.

* * @see #YamlConfig(Plugin, String, boolean) */ @@ -142,6 +146,7 @@ public class FConfig extends YamlConfiguration // BukkitLib @ https://github.com /** * Returns the default configuration as been stored in the jar-file of the owning plugin. + * * @return The default configuration. */ public YamlConfiguration getDefaultConfig() diff --git a/src/main/java/me/totalfreedom/totalfreedommod/config/MainConfig.java b/src/main/java/me/totalfreedom/totalfreedommod/config/MainConfig.java index 3693af39..e0e5423e 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/config/MainConfig.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/config/MainConfig.java @@ -15,6 +15,7 @@ import org.bukkit.configuration.file.YamlConfiguration; public class MainConfig { + public static final File CONFIG_FILE = new File(TotalFreedomMod.plugin.getDataFolder(), TotalFreedomMod.CONFIG_FILENAME); // private static final EnumMap ENTRY_MAP; @@ -79,7 +80,8 @@ public class MainConfig } else { - FLog.warning("Value for " + entry.getConfigName() + " is of type " + value.getClass().getSimpleName() + ". Needs to be " + entry.getType().getSimpleName() + ". Using default value."); + FLog.warning("Value for " + entry.getConfigName() + " is of type " + + value.getClass().getSimpleName() + ". Needs to be " + entry.getType().getSimpleName() + ". Using default value."); } } else @@ -274,6 +276,7 @@ public class MainConfig public static class TFM_Defaults { + private YamlConfiguration defaults = null; private TFM_Defaults(InputStream defaultConfig) @@ -300,4 +303,5 @@ public class MainConfig return defaults.get(path); } } + } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/freeze/FreezeData.java b/src/main/java/me/totalfreedom/totalfreedommod/freeze/FreezeData.java index 2c42d66a..7c3fff22 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/freeze/FreezeData.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/freeze/FreezeData.java @@ -14,6 +14,7 @@ import org.bukkit.scheduler.BukkitTask; public class FreezeData { + private final FPlayer fPlayer; // @Getter diff --git a/src/main/java/me/totalfreedom/totalfreedommod/freeze/Freezer.java b/src/main/java/me/totalfreedom/totalfreedommod/freeze/Freezer.java index ddb5d097..c81e81eb 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/freeze/Freezer.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/freeze/Freezer.java @@ -11,6 +11,7 @@ import org.bukkit.event.player.PlayerMoveEvent; public class Freezer extends AbstractService { + @Getter private boolean globalFreeze = false; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/fun/Jumppads.java b/src/main/java/me/totalfreedom/totalfreedommod/fun/Jumppads.java index fbe23712..46c84abc 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/fun/Jumppads.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/fun/Jumppads.java @@ -15,6 +15,7 @@ import org.bukkit.util.Vector; public class Jumppads extends AbstractService { + public static final Material BLOCK_ID = Material.WOOL; public static final double DAMPING_COEFFICIENT = 0.8; // @@ -117,6 +118,7 @@ public class Jumppads extends AbstractService public static enum JumpPadMode { + OFF(false), NORMAL(true), NORMAL_AND_SIDEWAYS(true), MADGEEK(true); private final boolean on; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/fun/Landminer.java b/src/main/java/me/totalfreedom/totalfreedommod/fun/Landminer.java index 57f944be..f2e7e0a7 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/fun/Landminer.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/fun/Landminer.java @@ -19,6 +19,7 @@ import org.bukkit.util.Vector; public class Landminer extends AbstractService { + @Getter private final List landmines = new ArrayList(); @@ -102,6 +103,7 @@ public class Landminer extends AbstractService public static class Landmine { + @Getter private final Location location; @Getter diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTMLGenerationTools.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTMLGenerationTools.java index 293f31eb..0bccaf4f 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTMLGenerationTools.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTMLGenerationTools.java @@ -7,6 +7,7 @@ import static org.apache.commons.lang3.StringEscapeUtils.escapeHtml4; public class HTMLGenerationTools { + private HTMLGenerationTools() { throw new AssertionError(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDModule.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDModule.java index 8318c747..8ec888d1 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDModule.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDModule.java @@ -10,6 +10,7 @@ import me.totalfreedom.totalfreedommod.util.FLog; public abstract class HTTPDModule { + protected final String uri; protected final Method method; protected final Map headers; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDPageBuilder.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDPageBuilder.java index 9ca7310e..5a9b5d54 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDPageBuilder.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDPageBuilder.java @@ -4,6 +4,7 @@ import me.totalfreedom.totalfreedommod.httpd.NanoHTTPD.Response; public class HTTPDPageBuilder { + private static final String TEMPLATE = "\r\n" + "\r\n" + "\r\n" diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_dump.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_dump.java index 6b1e3955..927f5d8a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_dump.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_dump.java @@ -12,6 +12,7 @@ import org.apache.commons.lang3.StringUtils; public class Module_dump extends HTTPDModule { + private File echoFile = null; private final String body; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_file.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_file.java index 2cdb8f2d..6b440a92 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_file.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_file.java @@ -21,6 +21,7 @@ import org.apache.commons.lang3.StringUtils; */ public class Module_file extends HTTPDModule { + private final File rootDir = new File(ConfigEntry.HTTPD_PUBLIC_FOLDER.getString()); public static final Map MIME_TYPES = new HashMap(); @@ -302,7 +303,7 @@ public class Module_file extends HTTPDModule } } - List _files = Arrays.asList(f.list(new FilenameFilter() + List files = Arrays.asList(f.list(new FilenameFilter() { @Override public boolean accept(File dir, String name) @@ -310,7 +311,7 @@ public class Module_file extends HTTPDModule return new File(dir, name).isFile(); } })); - Collections.sort(_files); + Collections.sort(files); List directories = Arrays.asList(f.list(new FilenameFilter() { @Override @@ -320,7 +321,7 @@ public class Module_file extends HTTPDModule } })); Collections.sort(directories); - if (up != null || directories.size() + _files.size() > 0) + if (up != null || directories.size() + files.size() > 0) { msg += "
    "; if (up != null || directories.size() > 0) @@ -337,12 +338,12 @@ public class Module_file extends HTTPDModule } msg += ""; } - if (_files.size() > 0) + if (files.size() > 0) { msg += "
    "; - for (int i = 0; i < _files.size(); i++) + for (int i = 0; i < files.size(); i++) { - String file = _files.get(i); + String file = files.get(i); msg += "
  • " + file + ""; File curFile = new File(f, file); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_help.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_help.java index a6519927..0b0efdab 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_help.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_help.java @@ -8,11 +8,11 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; +import me.totalfreedom.totalfreedommod.TotalFreedomMod; import me.totalfreedom.totalfreedommod.commands.FreedomCommand; import static me.totalfreedom.totalfreedommod.httpd.HTMLGenerationTools.heading; import static me.totalfreedom.totalfreedommod.httpd.HTMLGenerationTools.paragraph; import me.totalfreedom.totalfreedommod.rank.PlayerRank; -import me.totalfreedom.totalfreedommod.TotalFreedomMod; import net.pravian.aero.command.CommandReflection; import static org.apache.commons.lang3.StringEscapeUtils.escapeHtml4; import org.apache.commons.lang3.StringUtils; @@ -23,6 +23,7 @@ import org.bukkit.command.SimpleCommandMap; public class Module_help extends HTTPDModule { + public Module_help(NanoHTTPD.HTTPSession session) { super(session); @@ -136,6 +137,7 @@ public class Module_help extends HTTPDModule public static class CommandComparator implements Comparator { + @Override public int compare(Command a, Command b) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_list.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_list.java index 007fd9c7..a7c65300 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_list.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_list.java @@ -7,6 +7,7 @@ import org.bukkit.entity.Player; public class Module_list extends HTTPDModule { + public Module_list(NanoHTTPD.HTTPSession session) { super(session); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_permbans.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_permbans.java index 026169f2..b580be32 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_permbans.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_permbans.java @@ -5,6 +5,7 @@ import me.totalfreedom.totalfreedommod.TotalFreedomMod; public class Module_permbans extends HTTPDModule { + public Module_permbans(NanoHTTPD.HTTPSession session) { super(session); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_players.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_players.java index 68f954b6..585dd27f 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_players.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_players.java @@ -10,6 +10,7 @@ import org.json.simple.JSONObject; public class Module_players extends HTTPDModule { + public Module_players(NanoHTTPD.HTTPSession session) { super(session); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_schematic.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_schematic.java index 013291c3..496b266a 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_schematic.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/Module_schematic.java @@ -20,6 +20,7 @@ import org.apache.commons.lang3.StringUtils; public class Module_schematic extends HTTPDModule { + private static final File SCHEMATIC_FOLDER = new File("./plugins/WorldEdit/schematics/"); private static final String REQUEST_FORM_FILE_ELEMENT_NAME = "schematicFile"; private static final Pattern SCHEMATIC_FILENAME_LC = Pattern.compile("^[a-z0-9_'!,\\-]{1,30}\\.schematic$"); @@ -236,6 +237,7 @@ public class Module_schematic extends HTTPDModule private static class SchematicTransferException extends Exception { + public SchematicTransferException() { } @@ -248,6 +250,7 @@ public class Module_schematic extends HTTPDModule private static class ResponseOverrideException extends Exception { + private final Response response; public ResponseOverrideException(Response response) @@ -269,6 +272,7 @@ public class Module_schematic extends HTTPDModule private static enum ModuleMode { + LIST("list"), UPLOAD("upload"), DOWNLOAD("download"), @@ -300,4 +304,5 @@ public class Module_schematic extends HTTPDModule return INVALID; } } + } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/NanoHTTPD.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/NanoHTTPD.java index 114911c5..aefb0adf 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/NanoHTTPD.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/NanoHTTPD.java @@ -79,7 +79,8 @@ import me.totalfreedom.totalfreedommod.util.FLog; *

    * See the separate "LICENSE.md" file for the distribution license (Modified BSD licence) */ -public abstract class NanoHTTPD { +public abstract class NanoHTTPD +{ /** * Common mime type for dynamic content: plain text @@ -115,43 +116,60 @@ public abstract class NanoHTTPD { /** * Constructs an HTTP server on given port. */ - public NanoHTTPD(int port) { + public NanoHTTPD(int port) + { this(null, port); } /** * Constructs an HTTP server on given hostname and port. */ - public NanoHTTPD(String hostname, int port) { + public NanoHTTPD(String hostname, int port) + { this.hostname = hostname; this.myPort = port; setTempFileManagerFactory(new DefaultTempFileManagerFactory()); setAsyncRunner(new DefaultAsyncRunner()); } - private static final void safeClose(ServerSocket serverSocket) { - if (serverSocket != null) { - try { + private static final void safeClose(ServerSocket serverSocket) + { + if (serverSocket != null) + { + try + { serverSocket.close(); - } catch (IOException e) { + } + catch (IOException e) + { } } } - private static final void safeClose(Socket socket) { - if (socket != null) { - try { + private static final void safeClose(Socket socket) + { + if (socket != null) + { + try + { socket.close(); - } catch (IOException e) { + } + catch (IOException e) + { } } } - private static final void safeClose(Closeable closeable) { - if (closeable != null) { - try { + private static final void safeClose(Closeable closeable) + { + if (closeable != null) + { + try + { closeable.close(); - } catch (IOException e) { + } + catch (IOException e) + { } } } @@ -161,38 +179,55 @@ public abstract class NanoHTTPD { * * @throws IOException if the socket is in use. */ - public void start() throws IOException { + public void start() throws IOException + { myServerSocket = new ServerSocket(); myServerSocket.bind((hostname != null) ? new InetSocketAddress(hostname, myPort) : new InetSocketAddress(myPort)); - myThread = new Thread(new Runnable() { + myThread = new Thread(new Runnable() + { @Override - public void run() { - do { - try { + public void run() + { + do + { + try + { final Socket finalAccept = myServerSocket.accept(); final InputStream inputStream = finalAccept.getInputStream(); - if (inputStream == null) { + if (inputStream == null) + { safeClose(finalAccept); - } else { - asyncRunner.exec(new Runnable() { + } + else + { + asyncRunner.exec(new Runnable() + { @Override - public void run() { + public void run() + { OutputStream outputStream = null; - try { + try + { outputStream = finalAccept.getOutputStream(); TempFileManager tempFileManager = tempFileManagerFactory.create(); HTTPSession session = new HTTPSession(tempFileManager, inputStream, outputStream, finalAccept); - while (!finalAccept.isClosed()) { + while (!finalAccept.isClosed()) + { session.execute(); } - } catch (Exception e) { + } + catch (Exception e) + { // When the socket is closed by the client, we throw our own SocketException // to break the "keep alive" loop above. - if (!(e instanceof SocketException && "NanoHttpd Shutdown".equals(e.getMessage()))) { + if (!(e instanceof SocketException && "NanoHttpd Shutdown".equals(e.getMessage()))) + { FLog.severe(e); } - } finally { + } + finally + { safeClose(outputStream); safeClose(inputStream); safeClose(finalAccept); @@ -200,7 +235,9 @@ public abstract class NanoHTTPD { } }); } - } catch (IOException e) { + } + catch (IOException e) + { } } while (!myServerSocket.isClosed()); } @@ -213,24 +250,31 @@ public abstract class NanoHTTPD { /** * Stop the server. */ - public void stop() { - try { + public void stop() + { + try + { safeClose(myServerSocket); myThread.join(); - } catch (Exception e) { + } + catch (Exception e) + { FLog.severe(e); } } - public final int getListeningPort() { + public final int getListeningPort() + { return myServerSocket == null ? -1 : myServerSocket.getLocalPort(); } - public final boolean wasStarted() { + public final boolean wasStarted() + { return myServerSocket != null && myThread != null; } - public final boolean isAlive() { + public final boolean isAlive() + { return wasStarted() && !myServerSocket.isClosed() && myThread.isAlive(); } @@ -248,7 +292,8 @@ public abstract class NanoHTTPD { */ @Deprecated public Response serve(String uri, Method method, Map headers, Map parms, - Map files) { + Map files) + { return new Response(Response.Status.NOT_FOUND, MIME_PLAINTEXT, "Not Found"); } @@ -261,15 +306,22 @@ public abstract class NanoHTTPD { * @param session The HTTP session * @return HTTP response, see class Response for details */ - public Response serve(HTTPSession session) { + public Response serve(HTTPSession session) + { Map files = new HashMap(); Method method = session.getMethod(); - if (Method.PUT.equals(method) || Method.POST.equals(method)) { - try { + if (Method.PUT.equals(method) || Method.POST.equals(method)) + { + try + { session.parseBody(files); - } catch (IOException ioe) { + } + catch (IOException ioe) + { return new Response(Response.Status.INTERNAL_ERROR, MIME_PLAINTEXT, "SERVER INTERNAL ERROR: IOException: " + ioe.getMessage()); - } catch (ResponseException re) { + } + catch (ResponseException re) + { return new Response(re.getStatus(), MIME_PLAINTEXT, re.getMessage()); } } @@ -283,48 +335,56 @@ public abstract class NanoHTTPD { * @param str the percent encoded String * @return expanded form of the input, for example "foo%20bar" becomes "foo bar" */ - protected String decodePercent(String str) { + protected String decodePercent(String str) + { String decoded = null; - try { + try + { decoded = URLDecoder.decode(str, "UTF8"); - } catch (UnsupportedEncodingException ignored) { + } + catch (UnsupportedEncodingException ignored) + { } return decoded; } /** - * Decode parameters from a URL, handing the case where a single parameter name might have been - * supplied several times, by return lists of values. In general these lists will contain a single + * Decode parameters from a URL, handing the case where a single parameter name might have been supplied several times, by return lists of values. In general these lists will contain a single * element. * * @param parms original NanoHttpd parameters values, as passed to the serve() method. * @return a map of String (parameter name) to List<String> (a list of the values supplied). */ - protected Map> decodeParameters(Map parms) { + protected Map> decodeParameters(Map parms) + { return this.decodeParameters(parms.get(QUERY_STRING_PARAMETER)); } /** - * Decode parameters from a URL, handing the case where a single parameter name might have been - * supplied several times, by return lists of values. In general these lists will contain a single + * Decode parameters from a URL, handing the case where a single parameter name might have been supplied several times, by return lists of values. In general these lists will contain a single * element. * * @param queryString a query string pulled from the URL. * @return a map of String (parameter name) to List<String> (a list of the values supplied). */ - protected Map> decodeParameters(String queryString) { + protected Map> decodeParameters(String queryString) + { Map> parms = new HashMap>(); - if (queryString != null) { + if (queryString != null) + { StringTokenizer st = new StringTokenizer(queryString, "&"); - while (st.hasMoreTokens()) { + while (st.hasMoreTokens()) + { String e = st.nextToken(); int sep = e.indexOf('='); String propertyName = (sep >= 0) ? decodePercent(e.substring(0, sep)).trim() : decodePercent(e).trim(); - if (!parms.containsKey(propertyName)) { + if (!parms.containsKey(propertyName)) + { parms.put(propertyName, new ArrayList()); } String propertyValue = (sep >= 0) ? decodePercent(e.substring(sep + 1)) : null; - if (propertyValue != null) { + if (propertyValue != null) + { parms.get(propertyName).add(propertyValue); } } @@ -342,7 +402,8 @@ public abstract class NanoHTTPD { * * @param asyncRunner new strategy for handling threads. */ - public void setAsyncRunner(AsyncRunner asyncRunner) { + public void setAsyncRunner(AsyncRunner asyncRunner) + { this.asyncRunner = asyncRunner; } @@ -356,20 +417,25 @@ public abstract class NanoHTTPD { * * @param tempFileManagerFactory new strategy for handling temp files. */ - public void setTempFileManagerFactory(TempFileManagerFactory tempFileManagerFactory) { + public void setTempFileManagerFactory(TempFileManagerFactory tempFileManagerFactory) + { this.tempFileManagerFactory = tempFileManagerFactory; } /** * HTTP Request methods, with the ability to decode a String back to its enum value. */ - public enum Method { + public enum Method + { GET, PUT, POST, DELETE, HEAD; - static Method lookup(String method) { - for (Method m : Method.values()) { - if (m.toString().equalsIgnoreCase(method)) { + static Method lookup(String method) + { + for (Method m : Method.values()) + { + if (m.toString().equalsIgnoreCase(method)) + { return m; } } @@ -380,7 +446,8 @@ public abstract class NanoHTTPD { /** * Pluggable strategy for asynchronously executing requests. */ - public interface AsyncRunner { + public interface AsyncRunner + { void exec(Runnable code); } @@ -388,7 +455,8 @@ public abstract class NanoHTTPD { /** * Factory to create temp file managers. */ - public interface TempFileManagerFactory { + public interface TempFileManagerFactory + { TempFileManager create(); } @@ -398,10 +466,10 @@ public abstract class NanoHTTPD { * Temp file manager. *

    *

    - * Temp file managers are created 1-to-1 with incoming requests, to create and cleanup - * temporary files created as a result of handling the request.

    + * Temp file managers are created 1-to-1 with incoming requests, to create and cleanup temporary files created as a result of handling the request.

    */ - public interface TempFileManager { + public interface TempFileManager + { TempFile createTempFile() throws Exception; @@ -412,10 +480,10 @@ public abstract class NanoHTTPD { * A temp file. *

    *

    - * Temp files are responsible for managing the actual temporary storage and cleaning - * themselves up when no longer needed.

    + * Temp files are responsible for managing the actual temporary storage and cleaning themselves up when no longer needed.

    */ - public interface TempFile { + public interface TempFile + { OutputStream open() throws Exception; @@ -428,16 +496,17 @@ public abstract class NanoHTTPD { * Default threading strategy for NanoHttpd. *

    *

    - * By default, the server spawns a new Thread for every incoming request. These are set - * to daemon status, and named according to the request number. The name is - * useful when profiling the application.

    + * By default, the server spawns a new Thread for every incoming request. These are set to + * daemon status, and named according to the request number. The name is useful when profiling the application.

    */ - public static class DefaultAsyncRunner implements AsyncRunner { + public static class DefaultAsyncRunner implements AsyncRunner + { private long requestCount; @Override - public void exec(Runnable code) { + public void exec(Runnable code) + { ++requestCount; Thread t = new Thread(code); t.setDaemon(true); @@ -450,35 +519,40 @@ public abstract class NanoHTTPD { * Default strategy for creating and cleaning up temporary files. *

    *

    - *

    This class stores its files in the standard location (that is, - * wherever java.io.tmpdir points to). Files are added - * to an internal list, and deleted when no longer needed (that is, - * when clear() is invoked at the end of processing a - * request).

    + *

    This class stores its files in the standard location (that is, wherever java.io.tmpdir points to). Files are added to an internal list, and deleted when no longer needed (that + * is, when clear() is invoked at the end of processing a request).

    */ - public static class DefaultTempFileManager implements TempFileManager { + public static class DefaultTempFileManager implements TempFileManager + { private final String tmpdir; private final List tempFiles; - public DefaultTempFileManager() { + public DefaultTempFileManager() + { tmpdir = System.getProperty("java.io.tmpdir"); tempFiles = new ArrayList(); } @Override - public TempFile createTempFile() throws Exception { + public TempFile createTempFile() throws Exception + { DefaultTempFile tempFile = new DefaultTempFile(tmpdir); tempFiles.add(tempFile); return tempFile; } @Override - public void clear() { - for (TempFile file : tempFiles) { - try { + public void clear() + { + for (TempFile file : tempFiles) + { + try + { file.delete(); - } catch (Exception ignored) { + } + catch (Exception ignored) + { } } tempFiles.clear(); @@ -489,32 +563,36 @@ public abstract class NanoHTTPD { * Default strategy for creating and cleaning up temporary files. *

    *

    - *

    By default, files are created by File.createTempFile() in - * the directory specified.

    + *

    By default, files are created by File.createTempFile() in the directory specified.

    */ - public static class DefaultTempFile implements TempFile { + public static class DefaultTempFile implements TempFile + { private File file; private OutputStream fstream; - public DefaultTempFile(String tempdir) throws IOException { + public DefaultTempFile(String tempdir) throws IOException + { file = File.createTempFile("NanoHTTPD-", "", new File(tempdir)); fstream = new FileOutputStream(file); } @Override - public OutputStream open() throws Exception { + public OutputStream open() throws Exception + { return fstream; } @Override - public void delete() throws Exception { + public void delete() throws Exception + { safeClose(fstream); file.delete(); } @Override - public String getName() { + public String getName() + { return file.getAbsolutePath(); } } @@ -522,7 +600,8 @@ public abstract class NanoHTTPD { /** * HTTP response. Return one of these from serve(). */ - public static class Response { + public static class Response + { /** * HTTP status code after processing, e.g. "200 OK", HTTP_OK @@ -552,14 +631,16 @@ public abstract class NanoHTTPD { /** * Default constructor: response = HTTP_OK, mime = MIME_HTML and your supplied message */ - public Response(String msg) { + public Response(String msg) + { this(Status.OK, MIME_HTML, msg); } /** * Basic constructor. */ - public Response(Status status, String mimeType, InputStream data) { + public Response(Status status, String mimeType, InputStream data) + { this.status = status; this.mimeType = mimeType; this.data = data; @@ -568,12 +649,16 @@ public abstract class NanoHTTPD { /** * Convenience method that makes an InputStream out of given text. */ - public Response(Status status, String mimeType, String txt) { + public Response(Status status, String mimeType, String txt) + { this.status = status; this.mimeType = mimeType; - try { + try + { this.data = txt != null ? new ByteArrayInputStream(txt.getBytes("UTF-8")) : null; - } catch (java.io.UnsupportedEncodingException uee) { + } + catch (java.io.UnsupportedEncodingException uee) + { FLog.severe(uee); } } @@ -581,35 +666,43 @@ public abstract class NanoHTTPD { /** * Adds given line to the header. */ - public void addHeader(String name, String value) { + public void addHeader(String name, String value) + { header.put(name, value); } /** * Sends given response to the socket. */ - private void send(OutputStream outputStream) { + private void send(OutputStream outputStream) + { String mime = mimeType; SimpleDateFormat gmtFrmt = new SimpleDateFormat("E, d MMM yyyy HH:mm:ss 'GMT'", Locale.US); gmtFrmt.setTimeZone(TimeZone.getTimeZone("GMT")); - try { - if (status == null) { + try + { + if (status == null) + { throw new Error("sendResponse(): Status can't be null."); } PrintWriter pw = new PrintWriter(outputStream); pw.print("HTTP/1.1 " + status.getDescription() + " \r\n"); - if (mime != null) { + if (mime != null) + { pw.print("Content-Type: " + mime + "\r\n"); } - if (header == null || header.get("Date") == null) { + if (header == null || header.get("Date") == null) + { pw.print("Date: " + gmtFrmt.format(new Date()) + "\r\n"); } - if (header != null) { - for (String key : header.keySet()) { + if (header != null) + { + for (String key : header.keySet()) + { String value = header.get(key); pw.print(key + ": " + value + "\r\n"); } @@ -617,19 +710,25 @@ public abstract class NanoHTTPD { pw.print("Connection: keep-alive\r\n"); - if (requestMethod != Method.HEAD && chunkedTransfer) { + if (requestMethod != Method.HEAD && chunkedTransfer) + { sendAsChunked(outputStream, pw); - } else { + } + else + { sendAsFixedLength(outputStream, pw); } outputStream.flush(); safeClose(data); - } catch (IOException ioe) { + } + catch (IOException ioe) + { // Couldn't write? No can do. } } - private void sendAsChunked(OutputStream outputStream, PrintWriter pw) throws IOException { + private void sendAsChunked(OutputStream outputStream, PrintWriter pw) throws IOException + { pw.print("Transfer-Encoding: chunked\r\n"); pw.print("\r\n"); pw.flush(); @@ -637,7 +736,8 @@ public abstract class NanoHTTPD { byte[] CRLF = "\r\n".getBytes(); byte[] buff = new byte[BUFFER_SIZE]; int read; - while ((read = data.read(buff)) > 0) { + while ((read = data.read(buff)) > 0) + { outputStream.write(String.format("%x\r\n", read).getBytes()); outputStream.write(buff, 0, read); outputStream.write(CRLF); @@ -645,19 +745,23 @@ public abstract class NanoHTTPD { outputStream.write(String.format("0\r\n\r\n").getBytes()); } - private void sendAsFixedLength(OutputStream outputStream, PrintWriter pw) throws IOException { + private void sendAsFixedLength(OutputStream outputStream, PrintWriter pw) throws IOException + { int pending = data != null ? data.available() : 0; // This is to support partial sends, see serveFile() pw.print("Content-Length: " + pending + "\r\n"); pw.print("\r\n"); pw.flush(); - if (requestMethod != Method.HEAD && data != null) { + if (requestMethod != Method.HEAD && data != null) + { int BUFFER_SIZE = 16 * 1024; byte[] buff = new byte[BUFFER_SIZE]; - while (pending > 0) { + while (pending > 0) + { int read = data.read(buff, 0, ((pending > BUFFER_SIZE) ? BUFFER_SIZE : pending)); - if (read <= 0) { + if (read <= 0) + { break; } outputStream.write(buff, 0, read); @@ -667,46 +771,56 @@ public abstract class NanoHTTPD { } } - public Status getStatus() { + public Status getStatus() + { return status; } - public void setStatus(Status status) { + public void setStatus(Status status) + { this.status = status; } - public String getMimeType() { + public String getMimeType() + { return mimeType; } - public void setMimeType(String mimeType) { + public void setMimeType(String mimeType) + { this.mimeType = mimeType; } - public InputStream getData() { + public InputStream getData() + { return data; } - public void setData(InputStream data) { + public void setData(InputStream data) + { this.data = data; } - public Method getRequestMethod() { + public Method getRequestMethod() + { return requestMethod; } - public void setRequestMethod(Method requestMethod) { + public void setRequestMethod(Method requestMethod) + { this.requestMethod = requestMethod; } - public void setChunkedTransfer(boolean chunkedTransfer) { + public void setChunkedTransfer(boolean chunkedTransfer) + { this.chunkedTransfer = chunkedTransfer; } /** * Some HTTP response status codes */ - public enum Status { + public enum Status + { OK(200, "OK"), CREATED(201, "Created"), ACCEPTED(202, "Accepted"), NO_CONTENT(204, "No Content"), PARTIAL_CONTENT(206, "Partial Content"), REDIRECT(301, "Moved Permanently"), NOT_MODIFIED(304, "Not Modified"), BAD_REQUEST(400, "Bad Request"), UNAUTHORIZED(401, @@ -715,37 +829,44 @@ public abstract class NanoHTTPD { private final int requestStatus; private final String description; - Status(int requestStatus, String description) { + Status(int requestStatus, String description) + { this.requestStatus = requestStatus; this.description = description; } - public int getRequestStatus() { + public int getRequestStatus() + { return this.requestStatus; } - public String getDescription() { + public String getDescription() + { return "" + this.requestStatus + " " + description; } } } - public static final class ResponseException extends Exception { + public static final class ResponseException extends Exception + { private final Response.Status status; - public ResponseException(Response.Status status, String message) { + public ResponseException(Response.Status status, String message) + { super(message); this.status = status; } - public ResponseException(Response.Status status, String message, Exception e) { + public ResponseException(Response.Status status, String message, Exception e) + { super(message, e); this.status = status; } - public Response.Status getStatus() { + public Response.Status getStatus() + { return status; } } @@ -753,10 +874,12 @@ public abstract class NanoHTTPD { /** * Default strategy for creating and cleaning up temporary files. */ - private class DefaultTempFileManagerFactory implements TempFileManagerFactory { + private class DefaultTempFileManagerFactory implements TempFileManagerFactory + { @Override - public TempFileManager create() { + public TempFileManager create() + { return new DefaultTempFileManager(); } } @@ -764,7 +887,8 @@ public abstract class NanoHTTPD { /** * Handles one session, i.e. parses the HTTP request and returns the response. */ - protected class HTTPSession { + protected class HTTPSession + { public static final int BUFSIZE = 8192; private final TempFileManager tempFileManager; @@ -779,15 +903,18 @@ public abstract class NanoHTTPD { private Map headers; private CookieHandler cookies; - public HTTPSession(TempFileManager tempFileManager, InputStream inputStream, OutputStream outputStream, Socket socket) { + public HTTPSession(TempFileManager tempFileManager, InputStream inputStream, OutputStream outputStream, Socket socket) + { this.tempFileManager = tempFileManager; this.inputStream = inputStream; this.outputStream = outputStream; this.socket = socket; } - public void execute() throws IOException { - try { + public void execute() throws IOException + { + try + { // Read the first 8192 bytes. // The full header should fit in here. // Apache's default header limit is 8KB. @@ -797,21 +924,25 @@ public abstract class NanoHTTPD { rlen = 0; { int read = inputStream.read(buf, 0, BUFSIZE); - if (read == -1) { + if (read == -1) + { // socket was been closed throw new SocketException("NanoHttpd Shutdown"); } - while (read > 0) { + while (read > 0) + { rlen += read; splitbyte = findHeaderEnd(buf, rlen); - if (splitbyte > 0) { + if (splitbyte > 0) + { break; } read = inputStream.read(buf, rlen, BUFSIZE - rlen); } } - if (splitbyte < rlen) { + if (splitbyte < rlen) + { ByteArrayInputStream splitInputStream = new ByteArrayInputStream(buf, splitbyte, rlen - splitbyte); SequenceInputStream sequenceInputStream = new SequenceInputStream(splitInputStream, inputStream); inputStream = sequenceInputStream; @@ -828,7 +959,8 @@ public abstract class NanoHTTPD { decodeHeader(hin, pre, parms, headers); method = Method.lookup(pre.get("method")); - if (method == null) { + if (method == null) + { throw new ResponseException(Response.Status.BAD_REQUEST, "BAD REQUEST: Syntax error."); } @@ -838,51 +970,71 @@ public abstract class NanoHTTPD { // Ok, now do the serve() Response r = serve(this); - if (r == null) { + if (r == null) + { throw new ResponseException(Response.Status.INTERNAL_ERROR, "SERVER INTERNAL ERROR: Serve() returned a null response."); - } else { + } + else + { cookies.unloadQueue(r); r.setRequestMethod(method); r.send(outputStream); } - } catch (SocketException e) { + } + catch (SocketException e) + { // throw it out to close socket object (finalAccept) throw e; - } catch (IOException ioe) { + } + catch (IOException ioe) + { Response r = new Response(Response.Status.INTERNAL_ERROR, MIME_PLAINTEXT, "SERVER INTERNAL ERROR: IOException: " + ioe.getMessage()); r.send(outputStream); safeClose(outputStream); - } catch (ResponseException re) { + } + catch (ResponseException re) + { Response r = new Response(re.getStatus(), MIME_PLAINTEXT, re.getMessage()); r.send(outputStream); safeClose(outputStream); - } finally { + } + finally + { tempFileManager.clear(); } } - protected void parseBody(Map files) throws IOException, ResponseException { + protected void parseBody(Map files) throws IOException, ResponseException + { RandomAccessFile randomAccessFile = null; BufferedReader in = null; - try { + try + { randomAccessFile = getTmpBucket(); long size; - if (headers.containsKey("content-length")) { + if (headers.containsKey("content-length")) + { size = Integer.parseInt(headers.get("content-length")); - } else if (splitbyte < rlen) { + } + else if (splitbyte < rlen) + { size = rlen - splitbyte; - } else { + } + else + { size = 0; } // Now read all the body and write it to f byte[] buf = new byte[512]; - while (rlen >= 0 && size > 0) { + while (rlen >= 0 && size > 0) + { rlen = inputStream.read(buf, 0, 512); size -= rlen; - if (rlen > 0) { + if (rlen > 0) + { randomAccessFile.write(buf, 0, rlen); } } @@ -897,48 +1049,61 @@ public abstract class NanoHTTPD { // If the method is POST, there may be parameters // in data section, too, read it: - if (Method.POST.equals(method)) { + if (Method.POST.equals(method)) + { String contentType = ""; String contentTypeHeader = headers.get("content-type"); StringTokenizer st = null; - if (contentTypeHeader != null) { + if (contentTypeHeader != null) + { st = new StringTokenizer(contentTypeHeader, ",; "); - if (st.hasMoreTokens()) { + if (st.hasMoreTokens()) + { contentType = st.nextToken(); } } - if ("multipart/form-data".equalsIgnoreCase(contentType)) { + if ("multipart/form-data".equalsIgnoreCase(contentType)) + { // Handle multipart/form-data - if (!st.hasMoreTokens()) { + if (!st.hasMoreTokens()) + { throw new ResponseException(Response.Status.BAD_REQUEST, "BAD REQUEST: Content type is multipart/form-data but boundary missing. Usage: GET /example/file.html"); } String boundaryStartString = "boundary="; int boundaryContentStart = contentTypeHeader.indexOf(boundaryStartString) + boundaryStartString.length(); String boundary = contentTypeHeader.substring(boundaryContentStart, contentTypeHeader.length()); - if (boundary.startsWith("\"") && boundary.endsWith("\"")) { + if (boundary.startsWith("\"") && boundary.endsWith("\"")) + { boundary = boundary.substring(1, boundary.length() - 1); } decodeMultipartData(boundary, fbuf, in, parms, files); - } else { + } + else + { // Handle application/x-www-form-urlencoded String postLine = ""; char pbuf[] = new char[512]; int read = in.read(pbuf); - while (read >= 0 && !postLine.endsWith("\r\n")) { + while (read >= 0 && !postLine.endsWith("\r\n")) + { postLine += String.valueOf(pbuf, 0, read); read = in.read(pbuf); } postLine = postLine.trim(); decodeParms(postLine, parms); } - } else if (Method.PUT.equals(method)) { + } + else if (Method.PUT.equals(method)) + { files.put("content", saveTmpFile(fbuf, 0, fbuf.limit())); } - } finally { + } + finally + { safeClose(randomAccessFile); safeClose(in); } @@ -948,22 +1113,27 @@ public abstract class NanoHTTPD { * Decodes the sent headers and loads the data into Key/value pairs */ private void decodeHeader(BufferedReader in, Map pre, Map parms, Map headers) - throws ResponseException { - try { + throws ResponseException + { + try + { // Read the request line String inLine = in.readLine(); - if (inLine == null) { + if (inLine == null) + { return; } StringTokenizer st = new StringTokenizer(inLine); - if (!st.hasMoreTokens()) { + if (!st.hasMoreTokens()) + { throw new ResponseException(Response.Status.BAD_REQUEST, "BAD REQUEST: Syntax error. Usage: GET /example/file.html"); } pre.put("method", st.nextToken()); - if (!st.hasMoreTokens()) { + if (!st.hasMoreTokens()) + { throw new ResponseException(Response.Status.BAD_REQUEST, "BAD REQUEST: Missing URI. Usage: GET /example/file.html"); } @@ -971,10 +1141,13 @@ public abstract class NanoHTTPD { // Decode parameters from the URI int qmi = uri.indexOf('?'); - if (qmi >= 0) { + if (qmi >= 0) + { decodeParms(uri.substring(qmi + 1), parms); uri = decodePercent(uri.substring(0, qmi)); - } else { + } + else + { uri = decodePercent(uri); } @@ -982,11 +1155,14 @@ public abstract class NanoHTTPD { // followed by HTTP headers. Ignore version but parse headers. // NOTE: this now forces header names lowercase since they are // case insensitive and vary by client. - if (st.hasMoreTokens()) { + if (st.hasMoreTokens()) + { String line = in.readLine(); - while (line != null && line.trim().length() > 0) { + while (line != null && line.trim().length() > 0) + { int p = line.indexOf(':'); - if (p >= 0) { + if (p >= 0) + { headers.put(line.substring(0, p).trim().toLowerCase(), line.substring(p + 1).trim()); } line = in.readLine(); @@ -994,7 +1170,9 @@ public abstract class NanoHTTPD { } pre.put("uri", uri); - } catch (IOException ioe) { + } + catch (IOException ioe) + { throw new ResponseException(Response.Status.INTERNAL_ERROR, "SERVER INTERNAL ERROR: IOException: " + ioe.getMessage(), ioe); } } @@ -1003,36 +1181,46 @@ public abstract class NanoHTTPD { * Decodes the Multipart Body data and put it into Key/Value pairs. */ private void decodeMultipartData(String boundary, ByteBuffer fbuf, BufferedReader in, Map parms, - Map files) throws ResponseException { - try { + Map files) throws ResponseException + { + try + { int[] bpositions = getBoundaryPositions(fbuf, boundary.getBytes()); int boundarycount = 1; String mpline = in.readLine(); - while (mpline != null) { - if (!mpline.contains(boundary)) { + while (mpline != null) + { + if (!mpline.contains(boundary)) + { throw new ResponseException(Response.Status.BAD_REQUEST, "BAD REQUEST: Content type is multipart/form-data but next chunk does not start with boundary. Usage: GET /example/file.html"); } boundarycount++; Map item = new HashMap(); mpline = in.readLine(); - while (mpline != null && mpline.trim().length() > 0) { + while (mpline != null && mpline.trim().length() > 0) + { int p = mpline.indexOf(':'); - if (p != -1) { + if (p != -1) + { item.put(mpline.substring(0, p).trim().toLowerCase(), mpline.substring(p + 1).trim()); } mpline = in.readLine(); } - if (mpline != null) { + if (mpline != null) + { String contentDisposition = item.get("content-disposition"); - if (contentDisposition == null) { + if (contentDisposition == null) + { throw new ResponseException(Response.Status.BAD_REQUEST, "BAD REQUEST: Content type is multipart/form-data but no content-disposition info found. Usage: GET /example/file.html"); } StringTokenizer st = new StringTokenizer(contentDisposition, "; "); Map disposition = new HashMap(); - while (st.hasMoreTokens()) { + while (st.hasMoreTokens()) + { String token = st.nextToken(); int p = token.indexOf('='); - if (p != -1) { + if (p != -1) + { disposition.put(token.substring(0, p).trim().toLowerCase(), token.substring(p + 1).trim()); } } @@ -1040,20 +1228,29 @@ public abstract class NanoHTTPD { pname = pname.substring(1, pname.length() - 1); String value = ""; - if (item.get("content-type") == null) { - while (mpline != null && !mpline.contains(boundary)) { + if (item.get("content-type") == null) + { + while (mpline != null && !mpline.contains(boundary)) + { mpline = in.readLine(); - if (mpline != null) { + if (mpline != null) + { int d = mpline.indexOf(boundary); - if (d == -1) { + if (d == -1) + { value += mpline; - } else { + } + else + { value += mpline.substring(0, d - 2); } } } - } else { - if (boundarycount > bpositions.length) { + } + else + { + if (boundarycount > bpositions.length) + { throw new ResponseException(Response.Status.INTERNAL_ERROR, "Error processing request"); } int offset = stripMultipartHeaders(fbuf, bpositions[boundarycount - 2]); @@ -1061,14 +1258,17 @@ public abstract class NanoHTTPD { files.put(pname, path); value = disposition.get("filename"); value = value.substring(1, value.length() - 1); - do { + do + { mpline = in.readLine(); } while (mpline != null && !mpline.contains(boundary)); } parms.put(pname, value); } } - } catch (IOException ioe) { + } + catch (IOException ioe) + { throw new ResponseException(Response.Status.INTERNAL_ERROR, "SERVER INTERNAL ERROR: IOException: " + ioe.getMessage(), ioe); } } @@ -1076,10 +1276,13 @@ public abstract class NanoHTTPD { /** * Find byte index separating header from body. It must be the last byte of the first two sequential new lines. */ - private int findHeaderEnd(final byte[] buf, int rlen) { + private int findHeaderEnd(final byte[] buf, int rlen) + { int splitbyte = 0; - while (splitbyte + 3 < rlen) { - if (buf[splitbyte] == '\r' && buf[splitbyte + 1] == '\n' && buf[splitbyte + 2] == '\r' && buf[splitbyte + 3] == '\n') { + while (splitbyte + 3 < rlen) + { + if (buf[splitbyte] == '\r' && buf[splitbyte + 1] == '\n' && buf[splitbyte + 2] == '\r' && buf[splitbyte + 3] == '\n') + { return splitbyte + 4; } splitbyte++; @@ -1090,29 +1293,37 @@ public abstract class NanoHTTPD { /** * Find the byte positions where multipart boundaries start. */ - private int[] getBoundaryPositions(ByteBuffer b, byte[] boundary) { + private int[] getBoundaryPositions(ByteBuffer b, byte[] boundary) + { int matchcount = 0; int matchbyte = -1; List matchbytes = new ArrayList(); - for (int i = 0; i < b.limit(); i++) { - if (b.get(i) == boundary[matchcount]) { - if (matchcount == 0) { + for (int i = 0; i < b.limit(); i++) + { + if (b.get(i) == boundary[matchcount]) + { + if (matchcount == 0) + { matchbyte = i; } matchcount++; - if (matchcount == boundary.length) { + if (matchcount == boundary.length) + { matchbytes.add(matchbyte); matchcount = 0; matchbyte = -1; } - } else { + } + else + { i -= matchcount; matchcount = 0; matchbyte = -1; } } int[] ret = new int[matchbytes.size()]; - for (int i = 0; i < ret.length; i++) { + for (int i = 0; i < ret.length; i++) + { ret[i] = matchbytes.get(i); } return ret; @@ -1121,11 +1332,14 @@ public abstract class NanoHTTPD { /** * Retrieves the content of a sent file and saves it to a temporary file. The full path to the saved file is returned. */ - private String saveTmpFile(ByteBuffer b, int offset, int len) { + private String saveTmpFile(ByteBuffer b, int offset, int len) + { String path = ""; - if (len > 0) { + if (len > 0) + { FileOutputStream fileOutputStream = null; - try { + try + { TempFile tempFile = tempFileManager.createTempFile(); ByteBuffer src = b.duplicate(); fileOutputStream = new FileOutputStream(tempFile.getName()); @@ -1133,20 +1347,28 @@ public abstract class NanoHTTPD { src.position(offset).limit(offset + len); dest.write(src.slice()); path = tempFile.getName(); - } catch (Exception e) { // Catch exception if any + } + catch (Exception e) + { // Catch exception if any FLog.severe(e); - } finally { + } + finally + { safeClose(fileOutputStream); } } return path; } - private RandomAccessFile getTmpBucket() { - try { + private RandomAccessFile getTmpBucket() + { + try + { TempFile tempFile = tempFileManager.createTempFile(); return new RandomAccessFile(tempFile.getName(), "rw"); - } catch (Exception e) { + } + catch (Exception e) + { FLog.severe(e); } return null; @@ -1155,10 +1377,13 @@ public abstract class NanoHTTPD { /** * It returns the offset separating multipart file headers from the file's data. */ - private int stripMultipartHeaders(ByteBuffer b, int offset) { + private int stripMultipartHeaders(ByteBuffer b, int offset) + { int i; - for (i = offset; i < b.limit(); i++) { - if (b.get(i) == '\r' && b.get(++i) == '\n' && b.get(++i) == '\r' && b.get(++i) == '\n') { + for (i = offset; i < b.limit(); i++) + { + if (b.get(i) == '\r' && b.get(++i) == '\n' && b.get(++i) == '\r' && b.get(++i) == '\n') + { break; } } @@ -1166,84 +1391,103 @@ public abstract class NanoHTTPD { } /** - * Decodes parameters in percent-encoded URI-format ( e.g. "name=Jack%20Daniels&pass=Single%20Malt" ) and - * adds them to given Map. NOTE: this doesn't support multiple identical keys due to the simplicity of Map. + * Decodes parameters in percent-encoded URI-format ( e.g. "name=Jack%20Daniels&pass=Single%20Malt" ) and adds them to given Map. NOTE: this doesn't support multiple identical keys due to the + * simplicity of Map. */ - private void decodeParms(String parms, Map p) { - if (parms == null) { + private void decodeParms(String parms, Map p) + { + if (parms == null) + { p.put(QUERY_STRING_PARAMETER, ""); return; } p.put(QUERY_STRING_PARAMETER, parms); StringTokenizer st = new StringTokenizer(parms, "&"); - while (st.hasMoreTokens()) { + while (st.hasMoreTokens()) + { String e = st.nextToken(); int sep = e.indexOf('='); - if (sep >= 0) { + if (sep >= 0) + { p.put(decodePercent(e.substring(0, sep)).trim(), decodePercent(e.substring(sep + 1))); - } else { + } + else + { p.put(decodePercent(e).trim(), ""); } } } - public final Map getParms() { + public final Map getParms() + { return parms; } - public final Map getHeaders() { + public final Map getHeaders() + { return headers; } - public final String getUri() { + public final String getUri() + { return uri; } - public final Method getMethod() { + public final Method getMethod() + { return method; } - public final InputStream getInputStream() { + public final InputStream getInputStream() + { return inputStream; } - public CookieHandler getCookies() { + public CookieHandler getCookies() + { return cookies; } - public Socket getSocket() { + public Socket getSocket() + { return socket; } } - public static class Cookie { + public static class Cookie + { private String n, v, e; - public Cookie(String name, String value, String expires) { + public Cookie(String name, String value, String expires) + { n = name; v = value; e = expires; } - public Cookie(String name, String value) { + public Cookie(String name, String value) + { this(name, value, 30); } - public Cookie(String name, String value, int numDays) { + public Cookie(String name, String value, int numDays) + { n = name; v = value; e = getHTTPTime(numDays); } - public String getHTTPHeader() { + public String getHTTPHeader() + { String fmt = "%s=%s; expires=%s"; return String.format(fmt, n, v, e); } - public static String getHTTPTime(int days) { + public static String getHTTPTime(int days) + { Calendar calendar = Calendar.getInstance(); SimpleDateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US); dateFormat.setTimeZone(TimeZone.getTimeZone("GMT")); @@ -1253,24 +1497,27 @@ public abstract class NanoHTTPD { } /** - * Provides rudimentary support for cookies. - * Doesn't support 'path', 'secure' nor 'httpOnly'. - * Feel free to improve it and/or add unsupported features. + * Provides rudimentary support for cookies. Doesn't support 'path', 'secure' nor 'httpOnly'. Feel free to improve it and/or add unsupported features. * * @author LordFokas */ - public class CookieHandler implements Iterable { + public class CookieHandler implements Iterable + { private HashMap cookies = new HashMap(); private ArrayList queue = new ArrayList(); - public CookieHandler(Map httpHeaders) { + public CookieHandler(Map httpHeaders) + { String raw = httpHeaders.get("cookie"); - if (raw != null) { + if (raw != null) + { String[] tokens = raw.split(";"); - for (String token : tokens) { + for (String token : tokens) + { String[] data = token.trim().split("="); - if (data.length == 2) { + if (data.length == 2) + { cookies.put(data[0], data[1]); } } @@ -1278,7 +1525,8 @@ public abstract class NanoHTTPD { } @Override - public Iterator iterator() { + public Iterator iterator() + { return cookies.keySet().iterator(); } @@ -1288,7 +1536,8 @@ public abstract class NanoHTTPD { * @param name The cookie's name. * @return The cookie's value if it exists, null otherwise. */ - public String read(String name) { + public String read(String name) + { return cookies.get(name); } @@ -1299,11 +1548,13 @@ public abstract class NanoHTTPD { * @param value The cookie's value. * @param expires How many days until the cookie expires. */ - public void set(String name, String value, int expires) { + public void set(String name, String value, int expires) + { queue.add(new Cookie(name, value, Cookie.getHTTPTime(expires))); } - public void set(Cookie cookie) { + public void set(Cookie cookie) + { queue.add(cookie); } @@ -1312,7 +1563,8 @@ public abstract class NanoHTTPD { * * @param name The cookie name. */ - public void delete(String name) { + public void delete(String name) + { set(name, "-delete-", -30); } @@ -1321,8 +1573,10 @@ public abstract class NanoHTTPD { * * @param response The Response object to which headers the queued cookies will be added. */ - public void unloadQueue(Response response) { - for (Cookie cookie : queue) { + public void unloadQueue(Response response) + { + for (Cookie cookie : queue) + { response.addHeader("Set-Cookie", cookie.getHTTPHeader()); } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/player/FPlayer.java b/src/main/java/me/totalfreedom/totalfreedommod/player/FPlayer.java index dd46f663..4e7d38c0 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/player/FPlayer.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/player/FPlayer.java @@ -21,6 +21,7 @@ import org.bukkit.scheduler.BukkitTask; public class FPlayer { + public static final long AUTO_PURGE_TICKS = 5L * 60L * 20L; @Getter @@ -293,7 +294,7 @@ public class FPlayer return this.lockupScheduleTask; } - public void setLockupScheduleID(BukkitTask id) + public void setLockupScheduleId(BukkitTask id) { this.lockupScheduleTask = id; } @@ -397,6 +398,7 @@ public class FPlayer private class ArrowShooter extends BukkitRunnable { + private final Player player; private ArrowShooter(Player player) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerData.java b/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerData.java index 12d47bcd..297ea1b3 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerData.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerData.java @@ -13,6 +13,7 @@ import org.bukkit.entity.Player; public class PlayerData implements ConfigLoadable, ConfigSavable, Validatable { + @Getter @Setter private String username; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerList.java b/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerList.java index 6d596cd4..55930938 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerList.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/player/PlayerList.java @@ -20,6 +20,7 @@ import org.bukkit.event.player.PlayerQuitEvent; public class PlayerList extends AbstractService { + public static final long AUTO_PURGE_TICKS = 20L * 60L * 5L; // @Getter diff --git a/src/main/java/me/totalfreedom/totalfreedommod/rank/PlayerRank.java b/src/main/java/me/totalfreedom/totalfreedommod/rank/PlayerRank.java index 65aa4c19..59eb3825 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/rank/PlayerRank.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/rank/PlayerRank.java @@ -5,6 +5,7 @@ import org.bukkit.ChatColor; public enum PlayerRank implements Rank { + // Order is important here IMPOSTOR(false, "an", "Imp", ChatColor.YELLOW, ChatColor.UNDERLINE), NON_OP(false, "a", "", ChatColor.GREEN), diff --git a/src/main/java/me/totalfreedom/totalfreedommod/rollback/EntryType.java b/src/main/java/me/totalfreedom/totalfreedommod/rollback/EntryType.java index 4587f146..97e4b414 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/rollback/EntryType.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/rollback/EntryType.java @@ -2,6 +2,7 @@ package me.totalfreedom.totalfreedommod.rollback; public enum EntryType { + BLOCK_PLACE("placed"), BLOCK_BREAK("broke"); private final String action; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/rollback/RollbackEntry.java b/src/main/java/me/totalfreedom/totalfreedommod/rollback/RollbackEntry.java index d2257c62..fc4dcc31 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/rollback/RollbackEntry.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/rollback/RollbackEntry.java @@ -9,6 +9,7 @@ import org.bukkit.block.Block; public class RollbackEntry { + // Use of primitives to decrease overhead public final String author; public final String worldName; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/rollback/RollbackManager.java b/src/main/java/me/totalfreedom/totalfreedommod/rollback/RollbackManager.java index 2d45d0f7..e2a87f55 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/rollback/RollbackManager.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/rollback/RollbackManager.java @@ -25,6 +25,7 @@ import org.bukkit.scheduler.BukkitRunnable; public class RollbackManager extends AbstractService { + private static final Map> history = Maps.newHashMap(); private static final List removeHistory = Lists.newArrayList(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/util/DepreciationAggregator.java b/src/main/java/me/totalfreedom/totalfreedommod/util/DepreciationAggregator.java index a823f7ed..a404deab 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/util/DepreciationAggregator.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/util/DepreciationAggregator.java @@ -12,7 +12,8 @@ import org.bukkit.material.MaterialData; @SuppressWarnings("deprecation") public class DepreciationAggregator { - public static Block getTargetBlock(LivingEntity entity, HashSet< Byte> transparent, int maxDistance) + + public static Block getTargetBlock(LivingEntity entity, HashSet transparent, int maxDistance) { return entity.getTargetBlock(transparent, maxDistance); } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/util/FLog.java b/src/main/java/me/totalfreedom/totalfreedommod/util/FLog.java index 2ef49567..0a748459 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/util/FLog.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/util/FLog.java @@ -5,6 +5,7 @@ import java.util.logging.Logger; public class FLog { + private static final Logger FALLBACK_LOGGER = Logger.getLogger("Minecraft-Server"); private static Logger serverLogger = null; private static Logger pluginLogger = null; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/util/FUtil.java b/src/main/java/me/totalfreedom/totalfreedommod/util/FUtil.java index 808102cd..d0c83bf5 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/util/FUtil.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/util/FUtil.java @@ -860,8 +860,7 @@ public class FUtil catch (IllegalAccessException ex) { } - } - while (checkClass.getSuperclass() != Object.class + } while (checkClass.getSuperclass() != Object.class && ((checkClass = checkClass.getSuperclass()) != null)); return null; @@ -877,16 +876,16 @@ public class FUtil return ChatColor.translateAlternateColorCodes('&', string); } - public static long getUnixTime() - { - return System.currentTimeMillis() / 1000L; - } - public static Date getUnixDate(long unix) { return new Date(unix * 1000); } + public static long getUnixTime() + { + return System.currentTimeMillis() / 1000L; + } + public static long getUnixTime(Date date) { if (date == null) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/world/AdminWorld.java b/src/main/java/me/totalfreedom/totalfreedommod/world/AdminWorld.java index a797d263..a2486473 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/world/AdminWorld.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/world/AdminWorld.java @@ -23,6 +23,7 @@ import org.bukkit.event.player.PlayerMoveEvent; public final class AdminWorld extends CustomWorld { + private static final long CACHE_CLEAR_FREQUENCY = 30L * 1000L; //30 seconds, milliseconds private static final long TP_COOLDOWN_TIME = 500L; //0.5 seconds, milliseconds private static final String GENERATION_PARAMETERS = ConfigEntry.FLATLANDS_GENERATE_PARAMS.getString(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/world/CleanroomChunkGenerator.java b/src/main/java/me/totalfreedom/totalfreedommod/world/CleanroomChunkGenerator.java index 7eae39a3..b14a1bb9 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/world/CleanroomChunkGenerator.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/world/CleanroomChunkGenerator.java @@ -33,6 +33,7 @@ import org.bukkit.generator.ChunkGenerator; @SuppressWarnings("deprecation") public class CleanroomChunkGenerator extends ChunkGenerator { + private static final Logger log = Bukkit.getLogger(); private short[] layer; private byte[] layerDataValues; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/world/CustomWorld.java b/src/main/java/me/totalfreedom/totalfreedommod/world/CustomWorld.java index 6c8e39cb..d8b20231 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/world/CustomWorld.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/world/CustomWorld.java @@ -10,6 +10,7 @@ import org.bukkit.entity.Player; public abstract class CustomWorld extends PluginComponent { + @Getter private final String name; // diff --git a/src/main/java/me/totalfreedom/totalfreedommod/world/Flatlands.java b/src/main/java/me/totalfreedom/totalfreedommod/world/Flatlands.java index a1bf663f..85ddfd2e 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/world/Flatlands.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/world/Flatlands.java @@ -16,9 +16,8 @@ import org.bukkit.block.BlockFace; public class Flatlands extends CustomWorld { - private static final String GENERATION_PARAMETERS = ConfigEntry.FLATLANDS_GENERATE_PARAMS.getString(); - ; + private static final String GENERATION_PARAMETERS = ConfigEntry.FLATLANDS_GENERATE_PARAMS.getString(); public Flatlands() { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/world/WorldTime.java b/src/main/java/me/totalfreedom/totalfreedommod/world/WorldTime.java index 16805038..20af1274 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/world/WorldTime.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/world/WorldTime.java @@ -7,6 +7,7 @@ import org.bukkit.World; public enum WorldTime { + INHERIT(), SUNRISE("sunrise,morning", 0), NOON("noon,midday,day", 6000), diff --git a/src/main/java/me/totalfreedom/totalfreedommod/world/WorldWeather.java b/src/main/java/me/totalfreedom/totalfreedommod/world/WorldWeather.java index 03ef3f36..7956d612 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/world/WorldWeather.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/world/WorldWeather.java @@ -7,6 +7,7 @@ import org.bukkit.World; public enum WorldWeather { + OFF("off"), RAIN("rain"), STORM("storm,thunderstorm"); diff --git a/src/main/java/org/mcstats/Metrics.java b/src/main/java/org/mcstats/Metrics.java index 2f2b7c54..1dc29c23 100644 --- a/src/main/java/org/mcstats/Metrics.java +++ b/src/main/java/org/mcstats/Metrics.java @@ -136,8 +136,7 @@ public class Metrics } /** - * Construct and create a Graph that can be used to separate specific plotters to their own graphs on the metrics - * website. Plotters can be added to the graph object returned. + * Construct and create a Graph that can be used to separate specific plotters to their own graphs on the metrics website. Plotters can be added to the graph object returned. * * @param name The name of the graph * @return Graph object created. Will never return NULL under normal circumstances unless bad parameters are given @@ -175,9 +174,8 @@ public class Metrics } /** - * Start measuring statistics. This will immediately create an async repeating task as the plugin and send the - * initial data to the metrics backend, and then after that it will post in increments of PING_INTERVAL * 1200 - * ticks. + * Start measuring statistics. This will immediately create an async repeating task as the plugin and send the initial data to the metrics backend, and then after that it will post in increments + * of PING_INTERVAL * 1200 ticks. * * @return True if statistics measuring is running, otherwise false. */ @@ -699,8 +697,7 @@ public class Metrics { /** - * The graph's name, alphanumeric and spaces only :) If it does not comply to the above when submitted, it is - * rejected + * The graph's name, alphanumeric and spaces only :) If it does not comply to the above when submitted, it is rejected */ private final String name; /** @@ -809,9 +806,8 @@ public class Metrics } /** - * Get the current value for the plotted point. Since this function defers to an external function it may or may - * not return immediately thus cannot be guaranteed to be thread friendly or safe. This function can be called - * from any thread so care should be taken when accessing resources that need to be synchronized. + * Get the current value for the plotted point. Since this function defers to an external function it may or may not return immediately thus cannot be guaranteed to be thread friendly or safe. + * This function can be called from any thread so care should be taken when accessing resources that need to be synchronized. * * @return the current value for the point to be plotted. */ diff --git a/src/main/java/bans.yml b/src/main/resources/bans.yml similarity index 100% rename from src/main/java/bans.yml rename to src/main/resources/bans.yml diff --git a/src/main/resources/build.properties b/src/main/resources/build.properties deleted file mode 100644 index be700c5e..00000000 --- a/src/main/resources/build.properties +++ /dev/null @@ -1,4 +0,0 @@ -program.build.author=${tfm.build.author} -program.build.version=${tfm.build.version} -program.build.number=${tfm.build.number} -program.build.date=${tfm.build.date} diff --git a/src/main/java/config.yml b/src/main/resources/config.yml similarity index 100% rename from src/main/java/config.yml rename to src/main/resources/config.yml diff --git a/src/main/java/permban.yml b/src/main/resources/permban.yml similarity index 100% rename from src/main/java/permban.yml rename to src/main/resources/permban.yml diff --git a/src/main/java/plugin.yml b/src/main/resources/plugin.yml similarity index 90% rename from src/main/java/plugin.yml rename to src/main/resources/plugin.yml index f0765a95..51d70031 100644 --- a/src/main/java/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,6 +1,6 @@ name: TotalFreedomMod main: me.totalfreedom.totalfreedommod.TotalFreedomMod -version: 5.0 +version: ${tfm.build.version} description: Plugin for the Total Freedom server. depend: [Aero] softdepend: [BukkitTelnet, WorldEdit, Essentials] diff --git a/src/main/java/superadmin.yml b/src/main/resources/superadmin.yml similarity index 100% rename from src/main/java/superadmin.yml rename to src/main/resources/superadmin.yml diff --git a/supressions.xml b/supressions.xml new file mode 100644 index 00000000..dfede587 --- /dev/null +++ b/supressions.xml @@ -0,0 +1,11 @@ + + + + + + + + +