mirror of
https://github.com/magefree/mage.git
synced 2026-01-10 21:02:08 -08:00
Fixed that the information what mana was payed to pay the mana cost of a spell or ability were not correct if "spend mana as though" abilities were involved in the payment (fixes #3604).
This commit is contained in:
parent
dc5007003b
commit
5a3243890d
8 changed files with 109 additions and 23 deletions
|
|
@ -25,7 +25,6 @@
|
|||
* authors and should not be interpreted as representing official policies, either expressed
|
||||
* or implied, of BetaSteward_at_googlemail.com.
|
||||
*/
|
||||
|
||||
package org.mage.test.cards.abilities.enters;
|
||||
|
||||
import mage.constants.PhaseStep;
|
||||
|
|
@ -90,9 +89,14 @@ public class GreenbeltRampagerTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testCastNotOwned() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 10);
|
||||
addCard(Zone.HAND, playerA, "Gonti, Lord of Luxury");
|
||||
// Deathtouch
|
||||
// When Gonti, Lord of Luxury enters the battlefield, look at the top four cards of target opponent's library, exile one of them face down,
|
||||
// then put the rest on the bottom of that library in a random order. For as long as that card remains exiled,
|
||||
// you may look at it, you may cast it, and you may spend mana as though it were mana of any type to cast it.
|
||||
addCard(Zone.HAND, playerA, "Gonti, Lord of Luxury"); // Creature {2}{B}{B}
|
||||
|
||||
addCard(Zone.LIBRARY, playerB, "Greenbelt Rampager");
|
||||
// When Greenbelt Rampager enters the battlefield, pay {E}{E}. If you can't, return Greenbelt Rampager to its owner's hand and you get {E}.
|
||||
addCard(Zone.LIBRARY, playerB, "Greenbelt Rampager"); // Creature {G} 3/4
|
||||
|
||||
skipInitShuffling();
|
||||
|
||||
|
|
|
|||
|
|
@ -8,10 +8,38 @@ import org.mage.test.serverside.base.CardTestPlayerBase;
|
|||
|
||||
public class MycosynthLatticeTest extends CardTestPlayerBase {
|
||||
|
||||
@Test
|
||||
public void testMycoSynthLatticeNormal() {
|
||||
// Converge - Crystalline Crawler enters the battlefield with a +1/+1 counter on it for each color of mana spent to cast it.
|
||||
// Remove a +1/+1 counter from Crystalline Crawler: Add one mana of any color to your mana pool.
|
||||
// {T}: Put a +1/+1 counter on Crystalline Crawler.
|
||||
String crawler = "Crystalline Crawler";
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain");
|
||||
addCard(Zone.HAND, playerA, crawler);
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, crawler);
|
||||
|
||||
setStopAt(1, PhaseStep.POSTCOMBAT_MAIN);
|
||||
|
||||
execute();
|
||||
|
||||
assertCounterCount(playerA, crawler, CounterType.P1P1, 4);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testMycoSynthLatticeWithCrystallineCrawler(){
|
||||
public void testMycoSynthLatticeWithCrystallineCrawler() {
|
||||
// Converge - Crystalline Crawler enters the battlefield with a +1/+1 counter on it for each color of mana spent to cast it.
|
||||
// Remove a +1/+1 counter from Crystalline Crawler: Add one mana of any color to your mana pool.
|
||||
// {T}: Put a +1/+1 counter on Crystalline Crawler.
|
||||
String crawler = "Crystalline Crawler";
|
||||
|
||||
// All permanents are artifacts in addition to their other types.
|
||||
// All cards that aren't on the battlefield, spells, and permanents are colorless.
|
||||
// Players may spend mana as though it were mana of any color.
|
||||
String lattice = "Mycosynth Lattice";
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerA, lattice);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue