Modal double-faced cards - fixed game error on usage with some replacement effects (example: Diluvian Primordial, closes #12176) (#12184)

This commit is contained in:
Susucre 2024-04-25 21:40:57 +02:00 committed by GitHub
parent 1ae48593a8
commit 36d6547bf8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 339 additions and 38 deletions

View file

@ -1494,6 +1494,10 @@ public final class CardUtil {
}
public static void castSingle(Player player, Ability source, Game game, Card card, ManaCostsImpl<ManaCost> manaCost) {
castSingle(player, source, game, card, false, manaCost);
}
public static void castSingle(Player player, Ability source, Game game, Card card, boolean noMana, ManaCostsImpl<ManaCost> manaCost) {
// handle split-cards
if (card instanceof SplitCard) {
SplitCardHalf leftHalfCard = ((SplitCard) card).getLeftHalfCard();
@ -1560,8 +1564,8 @@ public final class CardUtil {
}
// cast it
player.cast(player.chooseAbilityForCast(card.getMainCard(), game, false),
game, false, new ApprovingObject(source, game));
player.cast(player.chooseAbilityForCast(card.getMainCard(), game, noMana),
game, noMana, new ApprovingObject(source, game));
// turn off effect after cast on every possible card-face
if (card instanceof SplitCard) {