org.bukkit.command.defaults.VanillaCommand Maven / Gradle / Ivy
package org.bukkit.command.defaults;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import java.util.List;
@Deprecated
public abstract class VanillaCommand extends Command {
static final int MAX_COORD = 30000000;
static final int MIN_COORD_MINUS_ONE = -30000001;
static final int MIN_COORD = -30000000;
protected VanillaCommand(String name) {
super(name);
}
protected VanillaCommand(String name, String description, String usageMessage, List aliases) {
super(name, description, usageMessage, aliases);
}
public static double getRelativeDouble(double original, CommandSender sender, String input) {
if (input.startsWith("~")) {
double value = getDouble(sender, input.substring(1));
if (value == MIN_COORD_MINUS_ONE) {
return MIN_COORD_MINUS_ONE;
}
return original + value;
} else {
return getDouble(sender, input);
}
}
public static double getDouble(CommandSender sender, String input) {
try {
return Double.parseDouble(input);
} catch (NumberFormatException ex) {
return MIN_COORD_MINUS_ONE;
}
}
public static double getDouble(CommandSender sender, String input, double min, double max) {
double result = getDouble(sender, input);
// TODO: This should throw an exception instead.
if (result < min) {
result = min;
} else if (result > max) {
result = max;
}
return result;
}
public boolean matches(String input) {
return input.equalsIgnoreCase(this.getName());
}
protected int getInteger(CommandSender sender, String value, int min) {
return getInteger(sender, value, min, Integer.MAX_VALUE);
}
int getInteger(CommandSender sender, String value, int min, int max) {
return getInteger(sender, value, min, max, false);
}
int getInteger(CommandSender sender, String value, int min, int max, boolean Throws) {
int i = min;
try {
i = Integer.valueOf(value);
} catch (NumberFormatException ex) {
if (Throws) {
throw new NumberFormatException(String.format("%s is not a valid number", value));
}
}
if (i < min) {
i = min;
} else if (i > max) {
i = max;
}
return i;
}
Integer getInteger(String value) {
try {
return Integer.valueOf(value);
} catch (NumberFormatException ex) {
return null;
}
}
String createString(String[] args, int start) {
return createString(args, start, " ");
}
String createString(String[] args, int start, String glue) {
StringBuilder string = new StringBuilder();
for (int x = start; x < args.length; x++) {
string.append(args[x]);
if (x != args.length - 1) {
string.append(glue);
}
}
return string.toString();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy