Require count digit on quantity line if module is enabled

Also use the same pattern for validating the line in QuantityUtil and ChestShoSign.
This commit is contained in:
Phoenix616 2022-02-04 16:28:44 +01:00
parent 419527efaa
commit e40b5567b8
No known key found for this signature in database
GPG Key ID: 40E2321E71738EB0
2 changed files with 2 additions and 2 deletions

View File

@ -6,7 +6,7 @@ import java.util.regex.Pattern;
* @author bricefrisco
*/
public class QuantityUtil {
private static final Pattern QUANTITY_LINE_WITH_COUNTER_PATTERN = Pattern.compile("^Q [1-9][0-9]{0,4} : C [0-9]{0,5}$");
public static final Pattern QUANTITY_LINE_WITH_COUNTER_PATTERN = Pattern.compile("^Q [1-9][0-9]{0,4} : C [0-9]{1,5}$");
public static int parseQuantity(String quantityLine) throws IllegalArgumentException {
if (quantityLineContainsCounter(quantityLine)) {

View File

@ -37,7 +37,7 @@ public class ChestShopSign {
public static final byte ITEM_LINE = 3;
public static final Pattern[][] SHOP_SIGN_PATTERN = {
{ Pattern.compile("^[1-9][0-9]{0,5}$"), Pattern.compile("^Q [1-9][0-9]{0,4} : C [0-9]{0,5}$") },
{ Pattern.compile("^[1-9][0-9]{0,5}$"), QuantityUtil.QUANTITY_LINE_WITH_COUNTER_PATTERN },
{
Pattern.compile("(?i)^((\\d*([.e]\\d+)?)|free)$"),
Pattern.compile("(?i)^([BS] *((\\d*([.e]\\d+)?)|free))( *: *([BS] *((\\d*([.e]\\d+)?)|free)))?$"),