49 lines
1.4 KiB
Java
49 lines
1.4 KiB
Java
package nl.iobyte.commandapi.arguments.number;
|
|
|
|
import nl.iobyte.commandapi.interfaces.ICommandArgument;
|
|
import nl.iobyte.commandapi.objects.ArgumentCheck;
|
|
import nl.iobyte.commandapi.interfaces.ICommandExecutor;
|
|
import java.util.List;
|
|
|
|
public class DoubleArgument implements ICommandArgument<Double> {
|
|
|
|
/**
|
|
* Message to display when giving an error
|
|
* @return String
|
|
*/
|
|
public String getMessage(String[] args) {
|
|
return "Invalid double: "+ "§f"+args[0];
|
|
}
|
|
|
|
/**
|
|
* Check if argument is valid Double
|
|
* @param sender ICommandExecutor
|
|
* @param args Arguments passed by Command
|
|
* @param previousArguments Previous arguments
|
|
* @return Boolean
|
|
*/
|
|
public ArgumentCheck checkArgument(ICommandExecutor sender, String[] args, List<Object> previousArguments) {
|
|
try {
|
|
Double.parseDouble(args[0]);
|
|
return new ArgumentCheck(true, 1);
|
|
} catch (Exception e) {
|
|
return new ArgumentCheck(false, 0);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Get Double passed by command
|
|
* @param sender ICommandExecutor
|
|
* @param args Arguments passed by Command
|
|
* @param previousArguments Previous arguments
|
|
* @return Double
|
|
*/
|
|
public Double getArgument(ICommandExecutor sender, String[] args, List<Object> previousArguments) {
|
|
try {
|
|
return Double.parseDouble(args[0]);
|
|
} catch (Exception e) {
|
|
return 0.0;
|
|
}
|
|
}
|
|
|
|
}
|