diff --git a/forge-core/src/main/java/forge/card/BoosterGenerator.java b/forge-core/src/main/java/forge/card/BoosterGenerator.java index 95807bf7519..404b0c37b7e 100644 --- a/forge-core/src/main/java/forge/card/BoosterGenerator.java +++ b/forge-core/src/main/java/forge/card/BoosterGenerator.java @@ -61,7 +61,7 @@ public class BoosterGenerator { List sheetsUsed = new ArrayList(); CardEdition edition = StaticData.instance().getEditions().get(template.getEdition()); - boolean hasFoil = edition != null && MyRandom.getRandom().nextInt(10000) <= edition.getFoilChanceInBooster() && edition.getFoilType() != FoilType.NOT_SUPPORTED; + boolean hasFoil = edition != null && MyRandom.getRandom().nextInt(10000) <= edition.getFoilChanceInBooster() && edition.getFoilType() != FoilType.NOT_SUPPORTED; // FoilChanceInBooster is given with 1/10000th precision for a closer 21.43% approximation. boolean commonSlotFoil = !hasFoil ? false : edition.getFoilAlwaysInCommonSlot(); String foilSlot = !hasFoil ? null : edition.getFoilAlwaysInCommonSlot() ? BoosterSlots.COMMON : Aggregates.random(template.getSlots()).getKey(); diff --git a/forge-core/src/main/java/forge/card/CardEdition.java b/forge-core/src/main/java/forge/card/CardEdition.java index cc5f87c2d3a..194f6e7b71a 100644 --- a/forge-core/src/main/java/forge/card/CardEdition.java +++ b/forge-core/src/main/java/forge/card/CardEdition.java @@ -30,7 +30,6 @@ import forge.util.Aggregates; import forge.util.FileSection; import forge.util.FileUtil; import forge.util.IItemReader; -import forge.util.TextUtil; import forge.util.storage.StorageBase; import forge.util.storage.StorageReaderBase; import forge.util.storage.StorageReaderFolder; @@ -287,15 +286,7 @@ public final class CardEdition implements Comparable { // immutable res.foilType = FoilType.NOT_SUPPORTED; break; } - - // Internally foil chance in booster is represented with 1:10000 precision - // to represent ratios like 1:6 more accurately (16.67%). - String foilChanceInBoosterStr = section.get("FoilChanceInBooster", "1:6"); - String[] foilChanceElems = TextUtil.split(foilChanceInBoosterStr, ':'); - int numerator = Integer.parseInt(foilChanceElems[0]); - int denominator = Integer.parseInt(foilChanceElems[1]); - res.foilChanceInBooster = Math.round((float)numerator / denominator * 10000); - + res.foilChanceInBooster = section.getInt("FoilChanceInBooster", 2143); // uses 1:10000 precision, 21.43% is roughly every 70th card foiled res.foilAlwaysInCommonSlot = section.getBoolean("FoilAlwaysInCommonSlot", false); return res; diff --git a/forge-gui/res/editions/Modern Masters.txt b/forge-gui/res/editions/Modern Masters.txt index d24eaec9b9c..7d91638a5b6 100644 --- a/forge-gui/res/editions/Modern Masters.txt +++ b/forge-gui/res/editions/Modern Masters.txt @@ -5,7 +5,7 @@ Date=2013-06-07 Type=Reprint BoosterCovers=3 Booster=10 Common, 3 Uncommon, 1 RareMythic, 1 Any -FoilChanceInBooster=1:1 +FoilChanceInBooster=10000 [cards] R Adarkar Valkyrie