mirror of
https://github.com/aikar/commands.git
synced 2026-05-31 06:11:55 +00:00
Handle numbers in Hexadecimal (0x#) and Binary (0b#) Notation (#318)
This commit is contained in:
@@ -466,11 +466,17 @@ public final class ACFUtil {
|
||||
|
||||
|
||||
public static Number parseNumber(String num, boolean suffixes) {
|
||||
ApplyModifierToNumber applyModifierToNumber = new ApplyModifierToNumber(num, suffixes).invoke();
|
||||
num = applyModifierToNumber.getNum();
|
||||
double mod = applyModifierToNumber.getMod();
|
||||
if (ACFPatterns.getPattern("^0x([0-9A-Fa-f]*)$").matcher(num).matches()) {
|
||||
return Long.parseLong(num.substring(2), 16);
|
||||
} else if (ACFPatterns.getPattern("^0b([01]*)$").matcher(num).matches()) {
|
||||
return Long.parseLong(num.substring(2), 2);
|
||||
} else {
|
||||
ApplyModifierToNumber applyModifierToNumber = new ApplyModifierToNumber(num, suffixes).invoke();
|
||||
num = applyModifierToNumber.getNum();
|
||||
double mod = applyModifierToNumber.getMod();
|
||||
|
||||
return Double.parseDouble(num) * mod;
|
||||
return Double.parseDouble(num) * mod;
|
||||
}
|
||||
}
|
||||
|
||||
public static BigDecimal parseBigNumber(String num, boolean suffixes) {
|
||||
|
||||
Reference in New Issue
Block a user