From 6e176640d50c4f317e083cdefa263cf6ae3fe542 Mon Sep 17 00:00:00 2001 From: kevlahnota Date: Sat, 5 Aug 2023 22:24:49 +0800 Subject: [PATCH] Update MakeCardEffect.java --- .../forge/game/ability/effects/MakeCardEffect.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/forge-game/src/main/java/forge/game/ability/effects/MakeCardEffect.java b/forge-game/src/main/java/forge/game/ability/effects/MakeCardEffect.java index d985ac22c33..c68eacd3c9f 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/MakeCardEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/MakeCardEffect.java @@ -77,13 +77,21 @@ public class MakeCardEffect extends SpellAbilityEffect { for (String s : spellbook) { // Cardnames that include "," must use ";" instead in Spellbook$ (i.e. Tovolar; Dire Overlord) s = s.replace(";", ","); - faces.add(StaticData.instance().getCommonCards().getFaceByName(s)); + ICardFace face = StaticData.instance().getCommonCards().getFaceByName(s); + if (face != null) + faces.add(face); + else + throw new RuntimeException("MakeCardEffect didn't find card face by name: " + s); } } else if (sa.hasParam("Booster")) { SealedProduct.Template booster = Aggregates.random(StaticData.instance().getBoosters()); pack = new BoosterPack(booster.getEdition(), booster).getCards(); for (PaperCard pc : pack) { - faces.add(pc.getRules().getMainPart()); + ICardFace face = pc.getRules().getMainPart(); + if (face != null) + faces.add(face); + else + throw new RuntimeException("MakeCardEffect didn't find card face by name: " + pc); } }