From a9c1c01a200896f80da617c2f783874692f62d0d Mon Sep 17 00:00:00 2001 From: leriomaggio Date: Wed, 4 Aug 2021 15:59:31 +0100 Subject: [PATCH] FIXED bug in CardStorageReader to support numbers in card names w/ lazy card loading Borrowing 100,000 Arrows was the driver test case --- forge-core/src/main/java/forge/CardStorageReader.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/forge-core/src/main/java/forge/CardStorageReader.java b/forge-core/src/main/java/forge/CardStorageReader.java index 0fa46745ec3..ce3e949c999 100644 --- a/forge-core/src/main/java/forge/CardStorageReader.java +++ b/forge-core/src/main/java/forge/CardStorageReader.java @@ -138,10 +138,13 @@ public class CardStorageReader { if (c == '\'') { continue; } - if (c < 'a' || c > 'z') { + if ((c < 'a' || c > 'z') && (c < '0' || c > '9')) { if (charIndex > 0 && chars[charIndex - 1] == '_') { continue; } + // Comma separator in numbers: "Borrowing 100,000 Arrows" + if ((c == ',') && (charIndex > 0) && (chars[charIndex-1] >= '0' || chars[charIndex-1] <= '9')) + continue; c = '_'; } chars[charIndex++] = c;