From 737129c79935a64d40505768723dbf7027969928 Mon Sep 17 00:00:00 2001 From: nandmp Date: Sat, 11 Jul 2026 00:09:16 +0900 Subject: [PATCH] fixes #15473 --- .../mage/cards/t/TheGitrogRavenousRide.java | 2 + .../cards/single/eoe/PerigeeBeckonerTest.java | 41 +++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 Mage.Tests/src/test/java/org/mage/test/cards/single/eoe/PerigeeBeckonerTest.java diff --git a/Mage.Sets/src/mage/cards/t/TheGitrogRavenousRide.java b/Mage.Sets/src/mage/cards/t/TheGitrogRavenousRide.java index 27e4b14ee58a..303d32800f92 100644 --- a/Mage.Sets/src/mage/cards/t/TheGitrogRavenousRide.java +++ b/Mage.Sets/src/mage/cards/t/TheGitrogRavenousRide.java @@ -105,6 +105,8 @@ public boolean apply(Game game, Ability source) { TargetCard targetCard = new TargetCardInHand(0, power, StaticFilters.FILTER_CARD_LANDS); player.choose(outcome, player.getHand(), targetCard, source, game); Cards cards = new CardsImpl(targetCard.getTargets()); + // Handle the dies event before moving the chosen lands clears its LKI. + game.getState().handleSimultaneousEvent(game); player.moveCards( cards.getCards(game), Zone.BATTLEFIELD, source, game, true, false, false, null diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/single/eoe/PerigeeBeckonerTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/single/eoe/PerigeeBeckonerTest.java new file mode 100644 index 000000000000..78a7cd86d0be --- /dev/null +++ b/Mage.Tests/src/test/java/org/mage/test/cards/single/eoe/PerigeeBeckonerTest.java @@ -0,0 +1,41 @@ +package org.mage.test.cards.single.eoe; + +import mage.constants.PhaseStep; +import mage.constants.Zone; +import org.junit.Test; +import org.mage.test.player.TestPlayer; +import org.mage.test.serverside.base.CardTestPlayerBase; + +public class PerigeeBeckonerTest extends CardTestPlayerBase { + + @Test + public void testCreatureSacrificedToGitrogReturns() { + setStrictChooseMode(true); + + addCard(Zone.BATTLEFIELD, playerA, "The Gitrog, Ravenous Ride"); + addCard(Zone.BATTLEFIELD, playerA, "Grizzly Bears"); + addCard(Zone.HAND, playerA, "Perigee Beckoner"); + addCard(Zone.HAND, playerA, "Plains"); + addCard(Zone.BATTLEFIELD, playerA, "Swamp", 5); + + castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Perigee Beckoner"); + addTarget(playerA, "Grizzly Bears"); + waitStackResolved(1, PhaseStep.PRECOMBAT_MAIN, playerA); + activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Saddle"); + setChoice(playerA, "Grizzly Bears"); + setChoice(playerA, TestPlayer.CHOICE_SKIP); + attack(1, playerA, "The Gitrog, Ravenous Ride", playerB); + setChoice(playerA, "Grizzly Bears"); + setChoice(playerA, "Plains"); //Important step; if no land is chosen the test suceedes always + setChoice(playerA, TestPlayer.CHOICE_SKIP); + + setStopAt(1, PhaseStep.POSTCOMBAT_MAIN); + execute(); + + assertPermanentCount(playerA, "Grizzly Bears", 1); + assertGraveyardCount(playerA, "Grizzly Bears", 0); + assertTapped("Grizzly Bears", true); + assertHandCount(playerA, 4); + assertPermanentCount(playerA, "Plains", 1); + } +}