Wire up inspect command settings

This commit is contained in:
nossr50 2019-04-11 08:05:15 -07:00
parent 7e047aed59
commit 7cf3b4e521
4 changed files with 17 additions and 17 deletions

View File

@ -55,6 +55,10 @@ Version 2.2.0
Added some failsafes to prevent mcMMO from saving too often Added some failsafes to prevent mcMMO from saving too often
Command config options will now be found in "commands.conf" Command config options will now be found in "commands.conf"
Added new toggle to allow players to inspect offline users
Added new toggle to turn off the inspection distance limitation
Players can now inspect players regardless of distance by default
Players can now inspect offline players by default
Settings related to party chat have been moved to the party config file Settings related to party chat have been moved to the party config file
Custom item (Chimaera Wing) config options will now be found in "custom_items.conf" Custom item (Chimaera Wing) config options will now be found in "custom_items.conf"

View File

@ -360,10 +360,6 @@ public class MainConfig extends ConfigValidated {
} }
}*/ }*/
/* Inspect command distance */
if (getInspectDistance() <= 0) {
reason.add(COMMANDS + "." + INSPECT1 + "." + MAX_DISTANCE + " should be greater than 0!");
}
/*if (getTreeFellerThreshold() <= 0) { /*if (getTreeFellerThreshold() <= 0) {
reason.add(ABILITIES + "." + LIMITS + "." + TREE_FELLER_THRESHOLD + " should be greater than 0!"); reason.add(ABILITIES + "." + LIMITS + "." + TREE_FELLER_THRESHOLD + " should be greater than 0!");
@ -547,15 +543,6 @@ public class MainConfig extends ConfigValidated {
return getIntValue(PARTICLES, LEVEL_UP + TIER); return getIntValue(PARTICLES, LEVEL_UP + TIER);
} }
public boolean getLargeFireworks() {
return getBooleanValue(PARTICLES, LARGE_FIREWORKS);
}
/* Inspect command distance */
public double getInspectDistance() {
return getDoubleValue(COMMANDS, INSPECT1, MAX_DISTANCE);
}
/* /*
* SKILL SETTINGS * SKILL SETTINGS
*/ */

View File

@ -9,17 +9,21 @@ public class ConfigCommandsInspect {
private static final double INSPECT_MAX_DISTANCE_DEFAULT = 30.0D; private static final double INSPECT_MAX_DISTANCE_DEFAULT = 30.0D;
private static final boolean LIMIT_INSPECT_RANGE_DEFAULT = false; private static final boolean LIMIT_INSPECT_RANGE_DEFAULT = false;
private static final boolean ALLOW_OFFLINE_INSPECTION_DEFAULT = true; private static final boolean ALLOW_OFFLINE_INSPECTION_DEFAULT = true;
private static final String BYPASS_PERMISSION = "mcmmo.commands.mcrank.others.far";
@Setting(value = "Inspect-Max-Distance", comment = "The maximum range at which players can inspect one another." + @Setting(value = "Inspect-Max-Distance", comment = "The maximum range at which players can inspect one another." +
"\nIs only used if limit inspect range is turned on." + "\nIs only used if limit inspect range is turned on." +
"\nDefault value: "+INSPECT_MAX_DISTANCE_DEFAULT) "\nDefault value: "+INSPECT_MAX_DISTANCE_DEFAULT)
private double inspectCommandMaxDistance = INSPECT_MAX_DISTANCE_DEFAULT; private double inspectCommandMaxDistance = INSPECT_MAX_DISTANCE_DEFAULT;
@Setting(value = "Limit-Inspect-Range", comment = "Inspection is limited by the distance between players instead of always being usable.") @Setting(value = "Limit-Inspect-Range", comment = "Inspection is limited by the distance between players instead of always being usable." +
"Permission to bypass this limit - " + BYPASS_PERMISSION
+"\nDefault value: "+LIMIT_INSPECT_RANGE_DEFAULT)
private boolean limitInspectRange = LIMIT_INSPECT_RANGE_DEFAULT; private boolean limitInspectRange = LIMIT_INSPECT_RANGE_DEFAULT;
@Setting(value = "Allow-Offline-Inspection", comment = "If set to true players will be able to look at the profiles of anyone on the server whether they are connected or not." + @Setting(value = "Allow-Offline-Inspection", comment = "If set to true players will be able to look at the profiles of anyone on the server whether they are connected or not." +
"\nAdmins and the console can always check the profiles of offline players.") "\nAdmins and the console can always check the profiles of offline players." +
"\nDefault value: "+ALLOW_OFFLINE_INSPECTION_DEFAULT)
private boolean allowInspectOnOfflinePlayers = ALLOW_OFFLINE_INSPECTION_DEFAULT; private boolean allowInspectOnOfflinePlayers = ALLOW_OFFLINE_INSPECTION_DEFAULT;
public double getInspectCommandMaxDistance() { public double getInspectCommandMaxDistance() {

View File

@ -38,7 +38,7 @@ public final class CommandUtils {
return true; return true;
} }
if (!hasPermission) { if (!hasPermission && !mcMMO.getConfigManager().getConfigCommands().isAllowInspectOnOfflinePlayers()) {
sender.sendMessage(LocaleLoader.getString("Inspect.Offline")); sender.sendMessage(LocaleLoader.getString("Inspect.Offline"));
return true; return true;
} }
@ -47,7 +47,12 @@ public final class CommandUtils {
} }
public static boolean tooFar(CommandSender sender, Player target, boolean hasPermission) { public static boolean tooFar(CommandSender sender, Player target, boolean hasPermission) {
if (sender instanceof Player && !Misc.isNear(((Player) sender).getLocation(), target.getLocation(), MainConfig.getInstance().getInspectDistance()) && !hasPermission) { if (sender instanceof Player
&& mcMMO.getConfigManager().getConfigCommands().isLimitInspectRange()
&& !hasPermission
&& !Misc.isNear(((Player) sender).getLocation(),
target.getLocation(),
mcMMO.getConfigManager().getConfigCommands().getInspectCommandMaxDistance())) {
sender.sendMessage(LocaleLoader.getString("Inspect.TooFar")); sender.sendMessage(LocaleLoader.getString("Inspect.TooFar"));
return true; return true;
} }